我正在尝试使用javascript将string
更改为int
。
var intVal = gSpread1.Text * 1;
我希望intVal
的类型为int
。
如果gSpread1.Text
小于1000,我可以得到一个int值。
但如果gSpread1.Text
大于1000,则intVal
会返回NaN
使用ParseInt
确保始终返回int
值的正确方法是什么?
答案 0 :(得分:37)
您是否尝试过intVal = parseInt(gSpread1.Text, 10);
10被称为基数,并指示要使用的数字系统。
更新:使用+
符号也有一个有用的快捷方式。
例如:+gSpread1.Text
会将字符串转换为数字。并且会返回integer
或float
,具体取决于字符串值。
答案 1 :(得分:2)
JavaScript中没有int类型。只有数字。如果你有一个非十进制数字,你可以使用parseInt,或者你可能在字符串上有垃圾,如“5asdkfkasdk”。但是对于常见的情况,当你知道你的字符串只是十进制数字时,我更喜欢使用Number()构造函数。它看起来更优雅,对于那些做大量演员的C和Python程序员来说更为熟悉。
var numericValue = Number("100000");
var numericValue2 = parseInt("100000", 10);
这些产生相同类型的相同结果。
答案 2 :(得分:1)
答案 3 :(得分:0)
以下代码适用于我:
var intVal = parseInt("100000");
alert(intVal);
也许发布你的非工作代码?这个问题可能在其他地方。
答案 4 :(得分:0)
如果您确定您的字符串包含int,则只能使用一个+
var n = "455";
n = +n; // now n is integer