【发布时间】:2011-04-07 04:40:09
【问题描述】:
我有一个存储边距的 css 值的变量。我想从最后删除“px”,这样我就可以使用这个数字了。我该怎么做?
【问题讨论】:
我有一个存储边距的 css 值的变量。我想从最后删除“px”,这样我就可以使用这个数字了。我该怎么做?
【问题讨论】:
选项 1:
parseInt('200px', 10);
parseInt() 函数解析一个字符串并返回一个整数。除非您知道自己在做什么,否则不要更改上述函数中的 10(称为“基数”)。
输出将为:200。
选项2 (我个人更喜欢这个选项)
parseFloat('200px')
输出将为:200
parseFloat() 函数解析一个字符串并返回一个浮点数。
parseFloat() 函数确定指定字符串中的第一个字符是否为数字。如果是,它会解析字符串直到到达数字的末尾,并将数字作为数字返回,而不是作为字符串。
选项 2 的优点是,如果您使用十进制数字(例如 200.32322px),您将获得返回的数字以及小数点后面的值。如果您需要返回特定的数字,这很有用。
【讨论】:
最好使用 parseFloat()
在您有小数的情况下,例如转换延迟为 0.5 秒,parseInt(x,10) 返回零,相比之下 parseFloat() 返回 0.5
var x = "0.5s";
var y = parseFloat(x); //returns 0.5
【讨论】:
0.5px不像0.5s那么常见)。
var x = "1px";
var y = parseInt(x, 10); // specify radix to prevent unpredictable behavior
【讨论】:
使用 String.replace() 方法是一种简单的方法:
【讨论】: