Я пытаюсь добавить свойства к объекту в JavaScript, и у меня возникли небольшие проблемы с закрытием «запомнить» контекст, в котором он был создан. Вот пример кода - на объекте есть другие свойства, но для цели этого вопроса я опустил их.Как мне закрыть мой JavaScript «запомнить» контекст, в котором он был создан, путем прокрутки свойств объекта?
dogs = {
fido: {},
milo: {},
ben: {}
};
for (dog in dogs) {
qualities = dogs[dog];
qualities.hungry = function(food) {
return (function(dog) {
return alert(dog + " is hungry for " + food);
})(dog);
};
}
dogs.fido.hungry('biscuits'); // alerts "ben is hungry for biscuits" instead of "fido"