!Array.prototype.every && (Array.prototype.every = function (callback) { callback = callback || function () { return false; }; var a = this; for (var n in a) { if (!callback.call(this, a[n], n, a)) { return false; break; } } return true; }); !Array.prototype.some && (Array.prototype.some = function (callback) { callback = callback || function () { return false; }; var a = this; var ret = false; for (var n in a) { if (callback.call(this, a[n], n, a)) { return true; break; } } return false; }); var a = [4, 5, 6]; console.log(a.every(function (e, i, arr) { return arr[i] === 4; })); console.log(a.every(function (e, i, arr) { return arr[i] === 4 || arr[i] === 5 || arr[i] === 6; })); var b = [4, 5, 6]; console.log(b.some(function (e, i, arr) { return arr[i] === 4; })); console.log(b.some(function (e, i, arr) { return arr[i] === 7; }));