- 'use strict';
 
- var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
 
- var toLength = require('../internals/to-length');
 
- var $RangeError = 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 new $RangeError('Wrong length or index');
 
-   return length;
 
- };
 
 
  |