Что это за синтаксис JavaScript: {Ci, CC}?
Я делаю надстройку надстройки FF, и я вижу синтаксис вроде этого:
var {Cc, Ci} = require('chrome');
Просто интересно, что это за синтаксис, и если он особенный для разработки FF или что-то еще.
Ответы
Ответ 1
См. Доменический ответ о том, что такое синтаксис, который называется назначением деструктурирования. Следующий ответ объясняет, почему это необходимо для разработки надстройки FF.
Там обсуждается, что это такое и почему это необходимо в http://groups.google.com/group/mozilla-labs-jetpack/browse_thread/thread/d288b79903b5b434.
Короткий ответ - да, он специфичен для разработки дополнений Firefox. Соответствующую документацию можно найти на https://addons.mozilla.org/en-US/developers/docs/sdk/1.3/dev-guide/module-development/chrome.html.
Ответ 2
Это называется назначением деструктуризации. Это особенность JavaScript 1.7, где в этом контексте "JavaScript" относится к определенным расширениям Mozilla к стандарту ECMAScript.
Предполагается включение в следующую версию JavaScript.
Эквивалентный код ECMAScript 5 будет
var __temp = require('chrome');
var Cc = __temp.Cc;
var Ci = __temp.Ci;