0s & Xs

by Chris Watson

HTML

<style type="text/css">body{background:#000}#console{margin:.5em;font-family:monospace;font-size:150%}.line{margin:.5em 0}.err{color:red}.log{color:#09f}.warn{color:#ee0}</style><div id="console"></div><script>function combine(a,b,c,d){return function(){a.apply(b,arguments),c.apply(d,arguments)}}function write(){var a=Array.prototype.slice.call(arguments),b=a.shift(),c=a.join(" ");$("<div/>",{text:c,"class":b+" line"}).appendTo($console)}window.onerror=function(a){console.error(a)};var _c=window.console,$console=$("#console");console.clear(),_c.log=combine(_c.log,_c,write.bind(null,"log")),_c.warn=combine(_c.warn,_c,write.bind(null,"warn")),_c.error=combine(_c.error,_c,write.bind(null,"err"));</script>

JavaScript

var grid = [
    new Array(3),
    new Array(3),
    new Array(3)
];

function set(piece, row, col) {
    if (grid[row][col] !== undefined) throw new Error('Grid cell not empty!');
    grid[row][col] = piece;
}

set(1, 2, 0);

console.log(grid.join('|'));