作为练习,我在相同的命名空间(名称空间为样本)中编写代码:
if ("undefined" == typeof(sample)) {
var sample = {};
}
sample = {
foo : function () {
},
bar : function () {
}
};
如何在同一命名空间中创建一个可供所有函数访问的变量?
答案 0 :(得分:3)
我假设您正在尝试访问示例命名空间内的变量。要执行此操作,请将变量声明为与函数相同的级别,并在函数中使用关键字 此
来访问它<head>
注意:如果你在函数内部创建一个函数(闭包),你需要为this关键字创建一个别名(比如_self),这样就不会覆盖上下文在你的新功能中。
答案 1 :(得分:1)
另一种选择:
(function(){
//Constructor
function Sample(name) {
this.sampleName = name;
}
Sample.prototype = {
foo: function() {
this.sampleName = "otherSample";
},
bar: function() {
this.sampleName += "anotherSample";
}
};
var sample = new Sample("wow");
})();