在 NodeJS 中从父作用域访问变量


var db_server  = "primary";
var that = this;
var startServerWith = function(db_server) {
    try {
        console.log(that.db_server);
        console.log(db_server);
                // start
    } catch (err) {
        console.log("Sever failed " , err.message);
    }
};
startServerWith("secondary");

返回:

undefined
secondary

我如何访问专利变量db_server数据("主要").在(NodeJS)中的函数

在javascript中无法访问阴影变量(除了特殊情况,例如全局变量)。

如果您需要访问两个变量,请不要将它们命名为相同的名称。

var main = function() {
    db_server  = "primary";
    var that = this;
    var startServerWith = function(db_server) {
        try {
            console.log(that.db_server);
            console.log(db_server);
                    // start
        } catch (err) {
            console.log("Sever failed " , err.message);
        }
    };
    startServerWith("secondary");
}
main();

返回:

primary
secondary

最新更新