功能参数只是变量吗?我应该重新分配吗?

时间:2017-03-03 09:24:25

标签: javascript variables arguments

在Javascript中,函数参数就像变量一样吗?我可以在函数体内重新分配它们就像任何变量一样(似乎运行良好),是“良好实践”还是应该将参数存储在变量中然后重新分配变量?

function example(a) {
    a = 5;
    return a;
}

function example2(a) {
    var b = a;
    b = 5;
    return b;
}

这里有任何的区别吗?

1 个答案:

答案 0 :(得分:0)

如果为新变量赋值参数是唯一使用它,那么你通过创建一个新变量并混淆代码的读者来产生开销,因为他们期望对参数使用其他一些。

如果您再也不使用该参数,那么请继续使用该参数并使用它,即使对于新的分配也是如此。

function example2(a) {
    var b = a; // now a is never used again
    b = 5;
    return b;
}