6-7是否正确
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title> arguments</title>
</head>
<body>
<p id="test" style="background-color: red; color: blue;">我是一个段落!</p>
<script type="text/javascript">
// 在此处补充代码
function css(){
if(arguments.length == 2){
return arguments[0].style.arguments[1];
}else if(arguments.length == 3){
return arguments[0].style.arguments[1] = arguments[2];
}else{
alert("请输入2-3个参数");
}
}
var test = document.getElementById("test");
console.log(test,"background-color","orange");
console.log(test,"color");
</script>
</body>
</html>
正在回答 回答被采纳积分+1
同学你好,代码中有如下问题:
1、css方法没有调用,所以css方法中的代码并没有执行:

建议调用一下:

此时控制台会报错:

点击报错信息,就能跳转到报错位置:

此处之所以报错,是因为写法不正确。arguments[1]是一个变量,我们需要获取的是style中,arguments[1]的值对应的那个属性值,所以要写成“style[变量]”:

“style.arguments[1]”这样写,会把arguments[1]当成一个固定的字符串来解析,而不会当成变量来解析。如果还是不理解二者的区别,可参考如下例子:

由于style中,没有字符串“arguments[1]”这样的属性,所以代码报错了。
综上,调整如下:

祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星