我将使用示例解释我的问题:
我有一个名为“ExampleObj”的对象,它返回 3 个属性“init”、“age”、“weight”,我需要从年龄访问到体重,但由于某种原因我不能这样做。您能解释一下为什么以及如何才能获得正确的结果吗?
编辑:这是当前的代码, self.tabAnimation() 正在 dom 上工作,但是......即使我使用 (); 也无法在“单击”上工作;检查代码中的****,是触发我错误的行。
return {
init: function() {
var self = this;
tabs.init();
self.tabAnimation();
tabToggler.on('click', self.tabAnimation );
},
tabAnimation: function() {
var self = this;
var activeTabBars = function() {
console.log('lol');
tabItem.find(bars).each(function() {
var me = this;
****self.animateBars(me,1000)****
});
}
animateOnVisible.init(tabItem, activeTabBars);
},
animateBars : function(el, duration) {
var percentage = $(el).data('value') + "%";
$(el).animate({
'width': percentage
}, duration);
}
}
}
非常感谢
戴维德
最佳答案
您必须使用这个
:
age: function() {
console.log('some random log');
var me = this;
me.weight;
me.weight(something);
},
您不必将 this
分配给另一个变量,但这样做也不会造成任何损害。
请注意,在您的“init”函数中,
self.age;
它本身不会做任何事情。要调用该函数,您必须编写它
self.age();
关于javascript - JS : Access from a property to another property in the same object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32825313/