解释表达式:对象后面跟着数组



我看到这样一个javascript表达式:

var foo = {...}[...];
谁能解释一下这是什么意思?

问好

更新:

这是一个代码示例:

var ENV_PRODUCTION = {
  production: true,
  development: false
}[process.ENV.NODE_ENV|| 'development'];

它将按键值返回内部值,参见:

var foo = {
 "1": "Jam",
"2":"Stuff"}[1];
var bar = {
 "1": "Jam",
"2":"Stuff"}[2];

var foo = {
 "1": "Jam",
"2":"Stuff"}[1];
var bar = {
 "1": "Jam",
"2":"Stuff"}[2];
var jam = {
 "1": "Jam",
"B":"Other Stuff"}['B'];
var foobar = {
 "...": "...",
"B":"Other Stuff"}['...'];
console.log(foo, bar, jam, foobar)

进一步的文档

是对对象元素的引用。

Try in console:

var x = {a:1}['a'];

x = 1

根据ES6

扩展语法允许在下列位置展开表达式多个参数(用于函数调用)或多个元素(用于数组字面量)或多个变量(用于解构赋值)预计.

最新更新