У меня есть
var Actions = {
damage : function(count,type){
return function(){
var _damage = {
type : type ,
count : count
};
G.enemy.take_damage[(_damage.type || this.damage)].call(G.enemy, (_damage.count || this.count));
//берутся внутренние хар-ки или самой карты, если внутренних нет
}
},
}
Объект создающий функции. Далее они вызываются вот так :
var attack = Actions.damage(1);
//this == card
attack.call(this);
Теперь к моей проблеме, я хочу сделать функцию, которая будет модифицировать объект _damage в функции attack. Что-то на подобии :
function modify(properties,funct){
//а что писать здесь никак не пойму
}
Это наверняка на самый лучший вариант, но он делает, то что тебе нужно (даже немного проще) и без глобальных переменных. Изменить "внутренности" функции можно путем передачи новых параметров. Повникай:
var getVariableFunction = (function() {
var oldA, oldB;
return function(A, B) {
oldA = A;
oldB = B;
return function(x = oldA, y = oldB) {
if (x !== oldA && y !== oldB) {
oldA = x;
oldB = y;
}
console.log(oldA, oldB);
}
};
})();
var attack = getVariableFunction(1, 2);
attack(); // 1, 2
attack(); // 1, 2
attack(4, 5); // меняем внутренности // 4, 5
attack(); // 4, 5
attack(); // 4, 5
Функцию modify
сам, думаю, допишешь на основе примера выше (если есть необходимость). Чую заминусуюсь за такой код))
Виртуальный выделенный сервер (VDS) становится отличным выбором
Нужно чтобы при наведении на текст менялась картинка и текст сам менял цветЯ написал так, но не знаю как изменение цвета текста сделать после...
Пытаюсь сделать скрол - стрелочка которая перематывает на верх и затем меяется на стрелку вниз которая перематывает на старое положениеВот...