javascript - toString 或 to parseInt javascript

标签 javascript casting tostring parseint

所以今天遇到了这个场景。我有一个整数和一个字符串需要比较。为了比较两者,我要么必须 toString() 整数,要么将字符串解析为 int。

这是我的问题,我应该选择哪一个,这两个在性能上有什么不同吗? (即使是最小的)是否有经验法则?

这是一个代码示例:

var intI = 1;
var stringS = '1';

if (intI.toString() == stringS)
console.log('are equal');

//Or
if (intI == parseInt(stringS))
console.log('are equal');

如果我能将 Integer 声明为我知道的字符串(因为它不用于计算),那将是最好的。但它在网站上无处不在。

最佳答案

这取决于您想要的语义而不是性能。字符串“001”是否应该等于数值1?如果答案是"is",则应将值转换为数字。如果不是,那么您应该将其作为字符串进行比较。

除非您有一个正在执行数百万次此类操作的应用程序,否则不要担心这些琐碎事情的性能。

另请注意,parseInt() 不关心数字字符串末尾是否有尾随垃圾。也就是

parseInt("123skidoo", 10) === 123

为真

关于javascript - toString 或 to parseInt javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13934027/

相关文章:

javascript - meteor 打开/关闭模式

java - 如何从未知大小的字符串中获取数字 (Java)

c++ - 二叉树为了toString函数C++

java - 类似于 Object.toString 的 C++ toString 运算符

javascript - 在javascript中创建元素的正确方法

javascript - 替换 Jquery UI 中的命令 GrowlUI?

sql - 在 SQL Server 2008 中将 float 转换为小数

Java传递变量——向下转型

C#:为自定义异常重写 ToString() 方法

javascript - 如何将此 php 数组转换为 JavaScript 对象数组?