2

我有这样的代码(使用node_redis):

client.sismember(someRecord, someArray, function(err, res) {
    if(res) { /* some code */ }
    else {
        client.sismember(otherRecord, otherArray, function(err, res) {
            /* some code */
        }
    }
}

我应该重命名第二个回调函数的参数还是它会正常工作?

4

3 回答 3

2

它将正常工作;内部函数中的变量将隐藏外部函数中的变量。

无论如何,您可能都想重命名变量。这样可以更容易地查看在哪里使用了什么,并且它允许您在需要时在内部函数中使用外部函数中的变量。

于 2013-09-21T09:41:07.917 回答
0

除非您打算让内部函数引用外部函数的变量,否则您不需要使用不同的变量名。至于你是否“应该”重命名它们,如果函数真的很短,那么它会很清楚哪个是哪个,但如果“某些代码”真的很长,如果它们使用不同的名称可能会更清楚。

于 2013-09-21T09:41:21.733 回答
0

是的,您可以,那是完全有效的,因为或它们的范围,但是如果名称不同会更好,这样它们在不久的将来就不会使您感到困惑

于 2013-09-21T09:42:01.523 回答