Javascript 在jQuery中,我应该使用parseFloat(el.width())还是parseInt(el.width(),10)?哪一个更可取
我总是有这样一个问题:Javascript 在jQuery中,我应该使用parseFloat(el.width())还是parseInt(el.width(),10)?哪一个更可取,javascript,jquery,parseint,parsefloat,Javascript,Jquery,Parseint,Parsefloat,我总是有这样一个问题: 当我不介意确切的浮点数时 哪一个比较好 parseFloat 帕森特 对于JS引擎,哪种方法更容易 它真的是既宽又长parseFloat在这里没有意义,因为值总是整数。我宁愿节省字节并使用: 执行此操作时:el.outerWidth()jQuery已返回整数。因此,在本例中,根本不需要解析宽度 需要注意的是,还有另一个超负荷的outerWidth(bool),它包括了边距,如果您需要左边距和右边距,您可以在这种情况下执行此操作: someValue = el.outerW
当我不介意确切的浮点数时 哪一个比较好 parseFloat 帕森特
对于JS引擎,哪种方法更容易 它真的是既宽又长
parseFloat
在这里没有意义,因为值总是整数。我宁愿节省字节并使用:
执行此操作时:
el.outerWidth()
jQuery已返回整数。因此,在本例中,根本不需要解析宽度
需要注意的是,还有另一个超负荷的outerWidth(bool)
,它包括了边距,如果您需要左边距和右边距,您可以在这种情况下执行此操作:
someValue = el.outerWidth(true);
最好的解决方案当然是Andy E的解决方案,但要回答您的问题: 我认为如果你的数字没有浮点数,
parseFloat
是没有意义的,所以我会使用parseInt
在这些性能比较中,变量的大小是一个重要因素,但是
int
和float
占用了内存中相同的空间(4字节),因此这并不重要。此外,parseFloat
似乎比parseInt
在outerWidth()的情况下做更多的计算和字符串解析,但我的问题是一般性的,无论如何,谢谢。很好。@adardesign-在这种情况下……你不能比一个像素更精确地定位,这对你来说毫无意义,因为这是监视器显示的内容。对于以像素为单位的布局属性,使用parseInt(val,10)代码>+1 Alon,“这”是我真的很想听到的答案,在其他地方,我的问题的实际解决方案,“你”回答了这个问题
someValue = parseInt(el.outerWidth(), 10)+parseInt(ele2.css("marginRight"), 10),
someValue = (+el.outerWidth())+(+ele2.css("marginRight"));
someValue = el.outerWidth(true);