Array.new
「new」は予約語だった。
Array.neww = function(len, val) { var arr, i, undefined; if (typeof len !== 'number') { throw new TypeError('"' + len + '" is a not number'); } if (len < 0) { throw new RangeError('invalid array length'); } arr = new Array(len); if (val === undefined) { return arr; } for (i = 0; i < len; ++i) { arr[i] = typeof val === 'function' ? val(i) : val; } return arr; };
Array.neww(3, 'foo'); // => ['foo', 'foo', 'foo'] Array.neww(3, function(n) { return 'hoge' + n; }); // => ['hoge0', 'hoge1', 'hoge2'] // JavaScript 1.8 feature Array.neww(3, function(n) 'hoge' + n); // => ['hoge0', 'hoge1', 'hoge2']