13919049954

js代码答疑

作者:金城在线 日期:2018/2/5 10:17:21 人气:318

var left=eval(div1.style.left.replace("px",""))的意思?


整行的意思是获取一个数值并赋给变量left。

eval()表示执行括号里的内容,接受字符串直接量作为参数,如果不是字符串则直接返回。

div1应该是一个dom元素。

div1.style.left是访问dom元素的计算样式中定位位置left的值,获取到的值为字符串类型,带单位,如'0px',下面以该值为例。

replace是JS中String对象的方法,上面获取到的是字符串,所以可以使用replace方法。

replace方法接受两个参数,第一个是要匹配的内容,本例为匹配‘px’,第二个参数是替换目标值,本例为空字符串,即将‘px’替换为‘’,相当于去掉‘px',经过此操作,获取的内容从’0px'变为‘0’,类型是字符串。

以上操作结果变为:var left = eval( '0' );

eval是把字符串里的内容拿出来计算,eval( '0' )等于是拿0来计算,不是拿字符串'0'来计算,结果是返回0。所以eval('0')的结果是数值0。

最终将数值0赋值给变量left。


            金城在线专注网站、软件、APP、微信公众平台、小程序、抖音、头条等开发推广,如果您有这方面的需求或者不同的观点,欢迎联系交流。

    官方微信

    本文网址:http://lz.net.cn/SEOyouhua/713.html
    读完这篇文章后,您心情如何?
    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    更多>>网友评论
    发表评论