我有以下简单示例。
(function() {
var note = {
show: function() {
alert('hi');
}
};
})();
什么时候使用
note.show();
显示错误消息 ReferenceError: note is not defined
。
但是当使用没有被匿名函数包围的注释对象时工作正常。
现在,如何在匿名函数之外或其他页面中使用注释对象?
最佳答案
我相信您打算使用类似模块模式的东西。一个非常基本的例子是:
var note = (function() {
return {
show: function() {
alert('hi');
}
};
}());
这仅在内部有闭包时才有用,例如:
var note = (function() {
var someNumber = 10;
return {
show: function() {
alert('hi');
},
someNumberTimes(n) {
return someNumber * n;
}
};
}());
console.log(note.someNumberTimes(5)); // 50
关于javascript - 当通过匿名函数封装一个对象时,显示错误信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16198663/