没有代码很难描述这种情况。我的修改使一些答案变得无关紧要。我在这里过去了原始代码和下面的简化版本:
function Entity(){
var value = {};
return {
'value': value
};
}
var e1 = Entity();
var e2 = Entity();
alert(e1.value === e2.value);
我认为它应该返回true。但实际上,它返回 false。从函数实体返回时是否复制了“值”?
更新 我想我现在知道原因了。每次实体函数调用表达式“var value={};” 将生成一个新对象。谢谢。