Показать сообщение отдельно
  #7 (permalink)  
Старый 27.07.2016, 13:29
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Surf, есть два способа обращения к свойству объекта:

- через точку (имя свойства состоит из букв, цифр, символов $ и _ и первый символ не является цифрой - имена переменных)
- через квадратные скобки (имя свойства любая строка или переменная).

Свойства доступные и через точку и через скобки (color, id, label, size, x, y) например:
// идентичны
event.data.node.color
event['data'].node.color
event.data['node'].color
event.data.node['color']
event['data']['node']['color']

Свойства доступные только через скобки, потому что не удовлетворяют условию через точку - содержат в имени символ ":" (read_cam0:size, read_cam0:x, read_cam0:y, renderer1:size, renderer1:x, renderer1:y) например:
// имя свойства любая строка
// идентичны
event['data'].node['renderer1:x']
event.data['node']['renderer1:x']
event.data.node['renderer1:x']
event['data']['node']['renderer1:x']

// имя свойства переменная
var data = 'data';
var node = 'node';
var renderer = 'renderer1:x';
// идентичны
event[data].node[renderer]
event.data[node][renderer]
event.data.node[renderer]
event[data][node][renderer]
Ответить с цитированием