我有一个哈希作为ID,我不小心使用了parseInt()。
我想知道为什么它返回一个实际的整数(7)而不是NaN
const hash = "7bb94588-4f62-4c41-a782-e5164844cc0d";
console.log(hash);
console.log(typeof hash);
console.log(parseInt(hash))

不是真正需要帮助的问题......但我想更好地了解JS的工作原理。
答案 0 :(得分:4)
根据spec
如果parseInt遇到的字符不是指定基数中的数字,它会忽略它和所有后续字符,并返回解析到该点的整数值。
答案 1 :(得分:2)
parseInt开始查看字符串开头的字符,当遇到非数字字符时,会从该位置剪掉字符串的其余部分。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt