所以我对 js 还是很陌生,我想进入更高级的东西,但是我对工厂模式有这个问题,这是基本代码:
(function () {
var objs = [];
function createObj(name) {
var thename = name;
return {
publicsaythename : function () {
console.log(thename);
}
}
}
for(var i = 0; i < 5; i++) {
var theObj = createObj("thename" + i);
theObj.publicsaythename();
objs.push(theObj);
}
for(var i = 0; i < objs.length; i++) {
theObj.publicsaythename();
}
})();
第一系列 console.log 调用输出我所期望的:
thename0
thename1
thename2
thename3
thename4
第二系列的 console.logs 输出我创建的最后一个对象 5 次。
5 x thename4
难道我做错了什么?还是这是预期的?
如果它是预期的。您如何解决能够存储您创建的对象以供以后使用的问题?