¿Cuál es esta sintaxis de JavaScript: {Ci, CC}? [duplicar]


Esta pregunta ya tiene una respuesta aquí:

Estoy haciendo un poco de desarrollo de complementos FF y estoy viendo sintaxis como esta:

var {Cc, Ci} = require('chrome');

Solo tengo curiosidad por saber cuál es esa sintaxis y si es especial para el desarrollo de FF u otra cosa.

Author: Bialecki, 2012-02-14

2 answers

Vea la respuesta de Domenic en cuanto a cuál es la sintaxis que se llama una asignación de desestructuración. La respuesta que sigue es por qué esto es necesario para el desarrollo de complementos FF.

Hay una discusión sobre qué es esto y por qué es necesario en http://groups.google.com/group/mozilla-labs-jetpack/browse_thread/thread/d288b79903b5b434 .

La respuesta corta es sí, es específica para el desarrollo de complementos de Firefox. La documentación pertinente se puede encontrar en https://addons.mozilla.org/en-US/developers/docs/sdk/1.3/dev-guide/module-development/chrome.html.

 8
Author: Bill,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-23 16:19:20

Esto se llama asignación de desestructuración. Es una característica de JavaScript 1.7, donde en este contexto "JavaScript" se refiere a las extensiones específicas de Mozilla para el estándar ECMAScript.

Está programado para la inclusión en la próxima versión de JavaScript.

El código ECMAScript 5 equivalente sería

var __temp = require('chrome');
var Cc = __temp.Cc;
var Ci = __temp.Ci;
 26
Author: Domenic,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-14 04:37:45