如题。现在有不少需求需要计算像素,但直接用诸如“3px”-“2px”
这样的会产生NaN
。所以我通常都是用正则提取出px
前面的数字然后计算再用字符串拼接加上px
,私以为这样的方法很笨,请问有没有更好的方法?
希望有帮助:
http://stackoverflow.com/questions/3024084/jquery-javascript-how-do-i-...
上一个应用刚好有这个需求~~~
我是这么做的,
var px = (parseInt('3px')-parseInt('2px'))+'px';
parseInt()暴力转换,带像素值的字符串会直接转换成数字,后面的px会被忽略,然后数字和字符串用+链接,最后的结果又被转换成字符串,搞定! 不必用正则匹配
自我感觉这样不算优雅,算流氓。。。。。。
现在目前比较好的方案是使用parseInt("20px")
将像素转为数字然后计算,最后再加上'px'。。
javascript
var px = (3 - 2) + 'px';
function count(a,b){return a + b + 'px'}