0

我有以下对象:

languages:
  english: [ 1, 2, 3 ]
  german: [ 4, 5, 6 ]

我的目标是获取所有值的数组,以languages使结果看起来像[ 1, 2, 3, 4, 5, 6 ].

这是我尝试过的:

(word for word in value for key, value of languages)

或者

(word for word in languages[lang] for lang in Object.keys languages)

两种方法都返回一个二维数组,数组作为第一维,值作为第二维

有没有办法使用单线获得所需的结果?

4

3 回答 3

1

是的你可以:

[].concat (val for key, val of languages)...

或者

Array::concat (val for key, val of languages)...

这是相同的。

(val for key, val of languages)这是要相互连接的所有语言数组的数组。

...运算符只是java-script apply功能的快捷方式。

于 2013-06-17T10:36:08.730 回答
1

使用concat()功能:

[1, 2, 3].concat [4, 5, 6]
于 2013-06-17T09:56:02.530 回答
0

我不知道为什么它必须在一行中......但在这里你有它在 2 LOC

result = []
result.splice(result.length, 0, languages[key]...) for key of languages
于 2013-06-17T10:35:10.133 回答