0
myvar = whatever;

namespace.myspace.Create = function () {
    this.myvar = null;
    this.MyFunction = function (val) {
        this.myvar = val;
    }
}

---

namespace.myspace.Create = function () {
    var myvar = null;
    this.MyFunction = function (val) {
        this.myvar = val;
    }
}

---

namespace.myspace.Create = function () {
    myvar = null;
    this.MyFunction = function (val) {
        this.myvar = val;
    }
}

var myObject = new namespace.myspace.Create();

查看上面的代码,尤其是 myvar 被定义为:

  • this.myvar = null;
  • var myvar = null;
  • 我的变量=空;

它们的主要区别、范围和用途是什么?有什么陷阱或首选的做法吗?这些中的任何一个都完全错误并且不应该使用?

4

1 回答 1

1

myvar是一个全局变量

this.myvarmyspace是命名空间范围内的公共变量

并且var myvar是一个私有变量,也在myspace命名空间范围内

于 2013-09-26T08:57:08.523 回答