core-js
Version:
Standard library
33 lines (32 loc) • 1.08 kB
JavaScript
!function(){
$define(PROTO, ARRAY, {
// https://github.com/domenic/Array.prototype.includes
includes: createArrayContains(true)
});
$define(PROTO, STRING, {
// https://github.com/mathiasbynens/String.prototype.at
at: createPointAt(true)
});
function createObjectToArray(isEntries){
return function(object){
var O = ES5Object(object)
, keys = getKeys(object)
, length = keys.length
, i = 0
, result = Array(length)
, key;
if(isEntries)while(length > i)result[i] = [key = keys[i++], O[key]];
else while(length > i)result[i] = O[keys[i++]];
return result;
}
}
$define(STATIC, OBJECT, {
// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-04/apr-9.md#51-objectentries-objectvalues
values: createObjectToArray(false),
entries: createObjectToArray(true)
});
$define(STATIC, REGEXP, {
// https://gist.github.com/kangax/9698100
escape: createReplacer(/([\\\-[\]{}()*+?.,^$|])/g, '\\$1', true)
});
}();