У меня есть функция, через которую я передаю некоторые переменные в качестве аргументов. Мне нужно, чтобы некоторые из них стали именами переменных или именами объектов объектов.Свойство имени динамического объекта не работает
key(500, 'door', 10, 'bounceOut', 'regY', -150, 5, 'bounceIn');
function key(point, instance, speed, ease, prop, value, speed2, ease2, prop2, value2){
ani.instance = true;
createjs.Tween.get(instance, {override: true}).to({prop: value}, -(value + -instance.prop) * speed, createjs.Ease.ease);
}
Решение заявил here должно было сработать, но он ничего не делает для меня.
// ani.instance changed to:
ani[instance]; // no error here
// instance.prop changed to:
instance[prop]; // returns 'undefined', expected it to return 'door[regY]'. instance and prop return 'door' and 'regY' respectively though
Что здесь происходит? Может ли кто-нибудь подтолкнуть меня в правильном направлении? Спасибо :)
EDIT То, что я хочу код, чтобы прочитать это:
door.regY = 200;
createjs.Tween.get(door, {override: true}).to({regY: -150}, -(-150 + -door.regY) * 10, createjs.Ease.bounceOut);
Является ли намерение '{prop: value}' создавать свойство с именем 'regY'? Если это так, вам нужно «var O = {}; O [prop] = значение; 'и передать' O' –
@AlexK. Не совсем. Вне этой функции 'door.regY' уже определен. Этот конкретный бит '{prop: value}' реагирует на 'get (instance, {override: true})'. Я хочу, чтобы он читал «get (door, {override: true)). ({Door: regY})' и т. Д. – AKG