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.
|
|
'use strict'; var globalThis = require('../internals/global-this'); var fails = require('../internals/fails'); var uncurryThis = require('../internals/function-uncurry-this'); var toString = require('../internals/to-string'); var trim = require('../internals/string-trim').trim; var whitespaces = require('../internals/whitespaces');
var $parseInt = globalThis.parseInt; var Symbol = globalThis.Symbol; var ITERATOR = Symbol && Symbol.iterator; var hex = /^[+-]?0x/i; var exec = uncurryThis(hex.exec); var FORCED = $parseInt(whitespaces + '08') !== 8 || $parseInt(whitespaces + '0x16') !== 22 // MS Edge 18- broken with boxed symbols
|| (ITERATOR && !fails(function () { $parseInt(Object(ITERATOR)); }));
// `parseInt` method
// https://tc39.es/ecma262/#sec-parseint-string-radix
module.exports = FORCED ? function parseInt(string, radix) { var S = trim(toString(string)); return $parseInt(S, (radix >>> 0) || (exec(hex, S) ? 16 : 10)); } : $parseInt;
|