我使用动态键和我的对象原型中的值初始化对象属性。所以我这样做:
var base_proto = {
init_props : function (props){
$.each(props, function(key, value) {
this[key] = value;
});
}
}
这不起作用,只返回没有属性的Object。
但是当我尝试这个时候.notDynamicName = notDynamicContent;在init_props中它起作用了。
基本上,键和值的动态分配就是问题所在。
那我怎么处理呢?
非常感谢您的回复。
答案 0 :(得分:4)
问题是你有一个功能,它创建了一个新的范围。所以,这不是你期望的。
你可以这样做:
var base_proto = {
init_props : function (props){
var _this = this;
$.each(props, function(key, value) {
_this[key] = value;
});
}
}
甚至更好:
var base_proto = {
init_props : function (props){
for(var k in props)
this[k] = props[k];
});
}
}