Amblique - JavaScript Presso - Part 1

Collection of examples from the Amblique JavaScript Presentation Part 1.

HTML

<textarea id="console" readonly="readonly"></textarea>

CSS

#console { 
    display: block;
    overflow: hidden;
    margin: 5px 0px;
    border: 1px solid #000;
    padding: 0;
    width: 100%;
    height: 100%;
    font-family: monospace;
}

JavaScript

$(function () {
    window.log = function () {
        log.$console = log.$console || $('#console');
        log.lines = log.lines || 0;

        var sliced = Array.prototype.slice.call(arguments);
        if (log.$console) {
            var c = log.$console.val();
            c += sliced.join('\n') + '\n';
            log.lines += sliced.length;
            
            log.$console.val(c);
            log.$console.attr('rows', log.lines);
        }
    };
    
    window.evaluate = function (code) {
        window.log(code + ' => ' + eval(code));
    };

    log('// code => evaluated');
    
    log('');
    evaluate('typeof undefined');
    evaluate('typeof null');
    
    log('');
    evaluate('null === undefined');
    evaluate('null == undefined');
    
    log('');
    evaluate('1 == "1"');
    evaluate('true == 1');
});