kalari

by Christian Storb

HTML

<div id="output">
</div>

JavaScript

(function() {

  "use strict";

	var kalari = window.kalari = window.kalari || {};

  kalari.parseBoolean = function(value) {
    if (typeof value === 'boolean') {
      return value;
    } else if (typeof value === 'string') {
      return "true" === value.toLowerCase();
    }
    return false;
  };
  
  kalari.timeout = function(milliseconds) {
    var deferred = $.Deferred();
    setTimeout(deferred.resolve, milliseconds);
    return deferred.promise();
  }; 
  
  return window.kalari;
}());


var output = document.querySelector("#output"), br = "<br>";
output.innerHTML += kalari.parseBoolean("true").toString();
output.innerHTML += br + kalari.parseBoolean("false").toString();
output.innerHTML += br + kalari.parseBoolean("").toString();
output.innerHTML += br + kalari.parseBoolean(null).toString();
output.innerHTML += br + kalari.parseBoolean(undefined).toString();

kalari.timeout(1000).then(function() {
  output.innerHTML += br + 'I waited for 1 second!';
});