我正在 JS 中处理一个相当复杂的对象,但遇到了问题:
我有以下(删节)代码:
var LocationSelector;
LocationSelector = function(container) {
this.selectors = {
container: container,
city_name: container.find('input.city_name'),
city_id: container.find('input.city_id')
};
return this.initialize();
};
LocationSelector.prototype = {
initialize: function() {
return this.city.checkStatus();
},
city: {
status: null,
message: null,
id: null,
checkStatus: function() {
if (LocationSelector.selectors.city_name.val() && LocationSelector.selectors.city_id.val()) {
return LocationSelector.city.setStatus('success');
}
},
setStatus: function(status) {
return alert(status);
}
}
};
两个问题:
1) 子对象函数内部this
不再引用根对象。如果我写出来,似乎我可以参考父母LocationSelector.object.method( args )
,但要输入的内容很多。有没有办法定义返回父对象的快捷方式?
2) 在某些情况下,我需要每页有几个 this 实例,所以对我来说很重要的是,我可以在selectors
实例化新对象时设置各种实例,然后在原型中引用实例选择器。LocationSelector
在子对象方法中引用父对象(即)是否可行?JS 如何知道要保留当前活动对象的存储属性?
基本上,我正在尝试实现一个类,而我对 JS 完全陌生,并不真正知道如何去做。因此,感谢任何帮助或建议。谢谢!