Javascript中的parseInt(x)和+(x)有啥区别[重复]
Posted
技术标签:
【中文标题】Javascript中的parseInt(x)和+(x)有啥区别[重复]【英文标题】:What are the differences between parseInt(x) and +(x) in Javascript [duplicate]Javascript中的parseInt(x)和+(x)有什么区别[重复] 【发布时间】:2018-07-28 01:20:09 【问题描述】:通过使用 parseInt(x),我们可以从字符串中获取整数值。但是我们也可以从 +(x) 实现相同的功能。功能差异到底是什么。 例如:
let input = '123';
let output = parseInt(input); // gives output as integer 123
let output = +(input); // gives output as integer 123
【问题讨论】:
你也可以使用~~('3')
。
【参考方案1】:
parseInt() 函数解析字符串参数并返回指定基数(数学数字系统中的基数)的整数,而 unary + 的作用更像 parseFloat,因为它也接受小数。
parseFloat() 函数解析一个字符串并返回一个浮点数。
因此,如果您正在验证用户输入,则 unary plus 对所有内容都具有正确的行为,但它接受小数,而 parseInt 则过于宽松。
您输入的字符串(即'123')没有小数点。所以输出是一样的。
【讨论】:
parseFloat(false)
.以上是关于Javascript中的parseInt(x)和+(x)有啥区别[重复]的主要内容,如果未能解决你的问题,请参考以下文章
javascript 进制转换(2进制8进制10进制16进制之间的转换)