kopia lustrzana https://github.com/c9/core
add polyfills for es6 array functions
rodzic
22baba1e14
commit
585f6b4a38
|
@ -41,13 +41,13 @@ define(function(require, exports, module) {
|
||||||
}
|
}
|
||||||
if (!String.prototype.includes) {
|
if (!String.prototype.includes) {
|
||||||
defineProp(String.prototype, "includes", function(str, position) {
|
defineProp(String.prototype, "includes", function(str, position) {
|
||||||
return this.indexOf(str, position != -1);
|
return this.indexOf(str, position) != -1;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
if (!Object.assign) {
|
if (!Object.assign) {
|
||||||
Object.assign = function (target) {
|
Object.assign = function(target) {
|
||||||
if (target === undefined || target === null) {
|
if (target === undefined || target === null) {
|
||||||
throw new TypeError('Cannot convert undefined or null to object');
|
throw new TypeError("Cannot convert undefined or null to object");
|
||||||
}
|
}
|
||||||
|
|
||||||
var output = Object(target);
|
var output = Object(target);
|
||||||
|
@ -62,5 +62,60 @@ define(function(require, exports, module) {
|
||||||
return output;
|
return output;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
if (!Array.prototype.find) {
|
||||||
|
defineProp(Array.prototype, "find", function(predicate) {
|
||||||
|
var len = this.length;
|
||||||
|
var thisArg = arguments[1];
|
||||||
|
for (var k = 0; k < len; k++) {
|
||||||
|
var kValue = this[k];
|
||||||
|
if (predicate.call(thisArg, kValue, k, this)) {
|
||||||
|
return kValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (!Array.prototype.findIndex) {
|
||||||
|
defineProp(Array.prototype, "findIndex", function(predicate) {
|
||||||
|
var len = this.length;
|
||||||
|
var thisArg = arguments[1];
|
||||||
|
for (var k = 0; k < len; k++) {
|
||||||
|
var kValue = this[k];
|
||||||
|
if (predicate.call(thisArg, kValue, k, this)) {
|
||||||
|
return k;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (!Array.prototype.includes) {
|
||||||
|
defineProp(Array.prototype, "includes", function(item, position) {
|
||||||
|
return this.indexOf(item, position) != -1;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (!Array.prototype.fill) {
|
||||||
|
defineProp(Array.prototype, "fill", function(value) {
|
||||||
|
var O = this;
|
||||||
|
var len = O.length >>> 0;
|
||||||
|
var start = arguments[1];
|
||||||
|
var relativeStart = start >> 0;
|
||||||
|
var k = relativeStart < 0 ?
|
||||||
|
Math.max(len + relativeStart, 0) :
|
||||||
|
Math.min(relativeStart, len);
|
||||||
|
var end = arguments[2];
|
||||||
|
var relativeEnd = end === undefined ?
|
||||||
|
len : end >> 0;
|
||||||
|
var final = relativeEnd < 0 ?
|
||||||
|
Math.max(len + relativeEnd, 0) :
|
||||||
|
Math.min(relativeEnd, len);
|
||||||
|
while (k < final) {
|
||||||
|
O[k] = value;
|
||||||
|
k++;
|
||||||
|
}
|
||||||
|
return O;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (!Array.of) {
|
||||||
|
defineProp(Array, "of", function() {
|
||||||
|
return Array.prototype.slice.call(arguments);
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
Ładowanie…
Reference in New Issue