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.
16 lines
507 B
16 lines
507 B
3 years ago
|
var global = require('../internals/global');
|
||
|
var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
|
||
|
var toLength = require('../internals/to-length');
|
||
|
|
||
|
var RangeError = global.RangeError;
|
||
|
|
||
|
// `ToIndex` abstract operation
|
||
|
// https://tc39.es/ecma262/#sec-toindex
|
||
|
module.exports = function (it) {
|
||
|
if (it === undefined) return 0;
|
||
|
var number = toIntegerOrInfinity(it);
|
||
|
var length = toLength(number);
|
||
|
if (number !== length) throw RangeError('Wrong length or index');
|
||
|
return length;
|
||
|
};
|