You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
746 B
20 lines
746 B
2 years ago
|
'use strict';
|
||
|
var $ = require('../internals/export');
|
||
|
var uncurryThis = require('../internals/function-uncurry-this');
|
||
|
var IndexedObject = require('../internals/indexed-object');
|
||
|
var toIndexedObject = require('../internals/to-indexed-object');
|
||
|
var arrayMethodIsStrict = require('../internals/array-method-is-strict');
|
||
|
|
||
|
var un$Join = uncurryThis([].join);
|
||
|
|
||
|
var ES3_STRINGS = IndexedObject != Object;
|
||
|
var STRICT_METHOD = arrayMethodIsStrict('join', ',');
|
||
|
|
||
|
// `Array.prototype.join` method
|
||
|
// https://tc39.es/ecma262/#sec-array.prototype.join
|
||
|
$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {
|
||
|
join: function join(separator) {
|
||
|
return un$Join(toIndexedObject(this), separator === undefined ? ',' : separator);
|
||
|
}
|
||
|
});
|