2015-07-03 141 views
3

這很奇怪,但我找不到任何簡單的解決方案。[] .concat([「x」,「y」],「z」) - >如何獲得[[「x」,「y」],「z」]而不是[「x」,「y」 , 「Z」]?

注意:我用的不變性,所以我是絕對不希望修改原始陣列(不建議使用push

[].concat(["x","y"],"z") - >如何獲得[["x","y"],"z"]而不是["x","y","z"]

+0

你總是可以只使用構造'陣列([ 「X」, 「Y」], 「Z」)'。只有警告是傳遞一個數字具有不同行爲的單個參數Array(5); //新的數組與.length == 5' – 2015-07-03 13:46:38

+3

...和ECMAScript 6提供了這個:'Array.of([「x」,「y」],「z」);',它可以很容易地被polyfilled和doesn不會受到單個數字參數問題的困擾。 – 2015-07-03 13:48:16

回答

8

可以使用一個嵌套的數組:

> [].concat([["x", "y"]], "z") 

[["x", "y"], "z"] 
相關問題