javascript - 我可以在回调中使用已使用的变量名称吗?

标签 javascript callback closures

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

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

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

最佳答案

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

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

关于javascript - 我可以在回调中使用已使用的变量名称吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18931101/

相关文章:

javascript - 使用 Javascript 将 HTML 字符串加载到 DOM 树中

javascript - 更改另一个组件中的状态

asynchronous - 如何在 Playground 中运行异步回调

groovy - 有没有一种干净的方法可以在 Groovy 中指定 Closure 参数类型?

Swift:函数与闭包的定义和语法

javascript - navigator.geolocation.getCurrentPosition 返回 "Unknown error acquiring position"

javascript - 将字符串数组从 ajax 函数传递到 mvc Controller

javascript - 我们如何知道所有的异步操作、所有的回调都完成了,并等待它们

JavaScript 异步回调

javascript - 是否可以迭代 JavaScript 闭包中的所有属性?