to boolean

to boolean

by ozzymcduff

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.3.0/knockout-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<script src="https://code.jquery.com/qunit/qunit-1.19.0.js"></script>
<link rel="stylesheet" href="https://code.jquery.com/qunit/qunit-1.19.0.css">
<div id="qunit"></div>
<div id="qunit-fixture"></div>

JavaScript

function toBoolean(val) {
        if ((typeof val) === 'string') {
            return val.toLowerCase() === 'true';
        } else if (typeof (val) === 'boolean') {
						return val;
        }
        return !!val;
    }

  test("toBoolean", function (assert) {
      assert.strictEqual(toBoolean('true'), true);
      assert.strictEqual(toBoolean('True'), true);
      assert.strictEqual(toBoolean(true), true);
      assert.strictEqual(toBoolean(1), true);
      assert.strictEqual(toBoolean('false'), false);
      assert.strictEqual(toBoolean('False'), false);
      assert.strictEqual(toBoolean(false), false);
      assert.strictEqual(toBoolean(0), false);

});