array.some()メソッド互換ie 8
2505 ワード
第5版では、ECMA-262規格にsomeが追加された.これにより、一部の実装環境ではサポートされない可能性があります.次のコードをスクリプトの先頭に挿入して、この問題を解決することができます.これにより、元のサポートされていない実装環境で使用できます.このアルゴリズムはECMA-262の第5版で指定されたアルゴリズムで、ObjectとTypeErrorが初期値を持つと仮定し、fun.CallはFunctionに等しい.prototype.call.---------------------
転載先:https://www.cnblogs.com/qiu2841/p/10529288.html
if (!Array.prototype.some)
{
Array.prototype.some = function(fun /*, thisArg */)
{
'use strict';
if (this === void 0 || this === null)
throw new TypeError();
var t = Object(this);
var len = t.length >>> 0;
if (typeof fun !== 'function')
throw new TypeError();
var thisArg = arguments.length >= 2 ? arguments[1] : void 0;
for (var i = 0; i < len; i++)
{
if (i in t && fun.call(thisArg, t[i], i, t))
return true;
}
return false;
};
}
---------------------
転載先:https://www.cnblogs.com/qiu2841/p/10529288.html