今天小编给大家分享一下JS中parseInt()和Number()区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
parseInt()函数将给定的字符串以指定的基数解析为整数。parseInt(string,radix)第二个参数表示使用的进制,我们一般使用10进制,也可能会有到8或者16进制。为了避免对“0”和“0x”开头的字符串解析错误,各种 javascript 编程规范都规定必须要明确给出第二个参数的值,如 parseInt(“123”,10).
parseInt('16', 8) = 14
parseInt('10', 8) = 8
parseInt('16', 10) = 16
parseInt('10', 10) = 10
parseInt('16', 16) = 22
parseInt('10', 16) = 16
parseInt 从头解析 string 为整数,在遇到不能解析的字符时就返回已经解析的整数部分,如果第一个字符就不能解析,就直接返回NaN。
Number() 在不用 new 操作符时,可以用来执行类型转换。如果无法转换为数字,就返回 NaN。 像“123a”,parseInt() 返回是123,Number() 返回是 NaN,不同类型的字符串使用这两个函数的转换区别:
// 当字符串是由数字组成的时候 他们转换的数字一样的没有差别
let numStr = '123'
console.log(parseInt(numStr)) //123
console.log(Number(numStr)) //123
// 当字符串是由字母组成的时候
let numStr = 'abc'
console.log(parseInt(numStr)) //NaN
console.log(Number(numStr)) //NaN
// 当字符串是由数字和字母组成的时候
let numStr = '123a'
console.log(parseInt(numStr)) //123
console.log(Number(numStr)) //NaN
// 当字符串是由0和数字
let numStr = '0123'
console.log(parseInt(numStr)) //123
console.log(Number(numStr)) //123
// **当字符串包含小数点**
let numStr = '123.456'
console.log(parseInt(numStr)) //123
console.log(Number(numStr)) //123.456
// **当字符串为null时**
let numStr = null
console.log(parseInt(numStr)) //NaN
console.log(Number(numStr)) //0
// **当字符串为''(空)时**
let numStr = ''
console.log(parseInt(numStr)) //NaN
console.log(Number(numStr)) //0
以上就是“JS中parseInt()和Number()区别是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。