css值转换成数值请抛弃parseInt

(编辑:jimmy 日期: 2026/1/22 浏览:2)

如:
复制代码 代码如下:
<div id="demo" style="width:24px"></div>
<script>
var elem = document.getElementById('demo'),
width = elem.style.width;
alert(parseInt(width));// 24
</script>

可是如果css值是这样呢:
复制代码 代码如下:
<div id="demo" style="opacity:0.5"></div>
<script>
var elem = document.getElementById('demo'),
opacity = elem.style.opacity;
alert(parseInt(opacity));// 0
</script>

以上显然parseInt()会出错,哪怕是'.5′这样的值,如果换成parseFloat()将能得到正确的结果:
复制代码 代码如下:
<div id="demo" style="opacity:0.5"></div>
<script>
var elem = document.getElementById('demo'),
opacity = elem.style.opacity;
alert(parseFloat(opacity));// 0.5

两者有何区别?

parseInt() 返回一个整数
parseFloat() 返回一个浮点数

进一步了解parseInt 和 parseFloat
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。