Show More
Commit Description:
fix wrong merge
Commit Description:
fix wrong merge
References:
File last commit:
Show/Diff file:
Action:
node_modules/core-js/modules/_array-copy-within.js
| 26 lines
| 876 B
| application/javascript
| JavascriptLexer
|
r789 | // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) | |||
'use strict'; | ||||
var toObject = require('./_to-object'); | ||||
var toAbsoluteIndex = require('./_to-absolute-index'); | ||||
var toLength = require('./_to-length'); | ||||
module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { | ||||
var O = toObject(this); | ||||
var len = toLength(O.length); | ||||
var to = toAbsoluteIndex(target, len); | ||||
var from = toAbsoluteIndex(start, len); | ||||
var end = arguments.length > 2 ? arguments[2] : undefined; | ||||
var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); | ||||
var inc = 1; | ||||
if (from < to && to < from + count) { | ||||
inc = -1; | ||||
from += count - 1; | ||||
to += count - 1; | ||||
} | ||||
while (count-- > 0) { | ||||
if (from in O) O[to] = O[from]; | ||||
else delete O[to]; | ||||
to += inc; | ||||
from += inc; | ||||
} return O; | ||||
}; | ||||