我遇到了调用fn(a,b,c)函数的代码,但fn的定义是fn(a,b),然后在作者内部调用参数[2],这意味着第三个未声明的参数.这是合法的吗?(我是该网站的新手,在发布之前尝试搜索相关问题,但无法找到.如果有这样做的习惯,我很乐意接受教育.)谢谢.
这是允许的.为了便于阅读和理智,通常最好指定好的参数名称,然后检查它们是否为空.阅读代码的人不会期望或理解这种技巧.
有些情况可以接受......例如:
function add(){
var sum = 0;
for (var i = 0; i < arguments.length; i++){
sum += arguments[i];
}
return sum;
}
Run Code Online (Sandbox Code Playgroud)
但是,即使在这种情况下,最好为读者添加占位符变量名称:
function add(val1, val2, etc){
var sum = 0;
for (var i = 0; i < arguments.length; i++){
sum += arguments[i];
}
return sum;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
458 次 |
| 最近记录: |