javascript - 关于js可变参数的一个取值疑问
天蓬老师
天蓬老师 2017-06-26 10:51:16
0
2
791

看到这么一篇文章:http://www.tuicool.com/articl...
代码片段:

<script>
function css()
{
if(arguments.length==2) //获取
{
return arguments[0].style[arguments[1]];
}
else
{
arguments[0].style[arguments[1]]=arguments[2];
}
}
window.onload=function ()
{
var op=document.getElementById('p1');
alert(css(op, 'width'));   //获取width属性值
css(op, 'background', 'green');
};
</script>
<p id="p1" style="width:200px; height:200px; background:red;"></p>

例子2这么一行:return arguments[0].style[arguments[1]];
为什么不是 这样的写法?
return arguments[0].style.arguments[1];
不是用点而是用的[],数组?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(2)
ringa_lee

.运算符访问属性时,属性名是写定的,不能够根据表达式动态的生成属性名的.
[]运算符访问属性时,可以根据[]里面的表达式动态生成属性名,得到属性名这个字符串.

阿神

style.arguments[1] 相当于 style['arguments'][1]

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板