Использование ассоциативного массива в качестве имени переменной? -javascript

Я просматривал некоторый код из расширения firefox (здесь:https://github.com/mozilla/prospector/blob/master/oneLiner/bootstrap.js#L34)и увидел то, чего никогда раньше не видел в javascript. Программист использовал ассоциативный массив в качестве имени переменной. Может ли кто-нибудь объяснить мне, как работает эта ссылка на переменную?

const {classes: Cc, interfaces: Ci, utils: Cu} = Components;

Я понял "const" из прочтения этой страницы :https://developer.mozilla.org/en/JavaScript/Reference/Statements/const

, но как он может использовать объект ассоциативного массива в качестве имени переменной?

Кроме того, кажется, что имена ключей в ассоциативном массиве используются как ссылки на методы компонентов (, перечисленные здесь :https://developer.mozilla.org/en/Components_object). Я всегда думал, что имя ключа должно идти первым, а затем значение, но это, кажется, сначала помещает значение ссылки на метод классов компонентов, а затем присваивает его имени Cc, даже если Cc находится в месте, где значение пойдет (и Ci для метода интерфейсов компонентов и Cu для метода использования компонентов ).

5
задан Wladimir Palant 27 April 2012 в 13:07
поделиться