🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Q&A

解決済

2回答

214閲覧

配列[ [ {},{},{} ],[ {},{} ] ] を [ {},{},{},{},{} ]にする方法

退会済みユーザー

退会済みユーザー

総合スコア0

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

0グッド

1クリップ

投稿2019/10/23 07:53

array = [ [ {},{},{} ],[ {},{} ] ] を array = [ {},{},{},{},{} ]

にするにはどのようにすれば簡単にできるのでしょうか?

node v8.16.1を使用しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nerianighthawk

2019/10/23 08:13

2つほど質問があるのですが、 1. 両方とも array = となっていますが、同じ変数名であることは必須ですか? 2. 前者は2重配列ですが、2重配列になっていることは確定ですか?例えば、[ [ {},{},{} ],[ {},{} ], {} ]のような、外の配列の中には配列ではない要素を含む可能性はありますか?
退会済みユーザー

退会済みユーザー

2019/10/23 08:16

1、変数名はなんでも大丈夫です 2、いえ、その可能性はございません この場合ですとどのようにすればよいのでしょうか?
guest

回答2

0

ベストアンサー

他の条件があるのかもしれませんが、記載されている条件ならば Array.prototype.flat() で対応が可能かと思われます。

ドキュメント↓
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/flat

javascript

1var a = [ [ {},{},{} ],[ {},{} ] ] 2a = a.flat()

コメントにも記載しましたが、Node.js 11.0.0で追加されたようです。
質問者の環境は「8.16.1」との事なので、本回答は実行できません。
大変失礼いたしました。

投稿2019/10/23 08:21

編集2019/10/25 02:44
yamap55

総合スコア1376

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/10/23 09:41

flat is not a functionとなってしまいググってみたのですがブラウザ依存の記事はできたのですがcentosでやっているのでよく意味はわかりませんでした
yamap55

2019/10/25 02:42

> node v8.16.1を使用しています 大変失礼いたしました。Node.js 11.0.0で追加されたようです。
退会済みユーザー

退会済みユーザー

2019/10/25 02:58

ああ、バージョンの違いなだけだったのですね そちらの方が使いやすそうですしバージョンが11以上になった時には試してみようと思います ありがとうございます
退会済みユーザー

退会済みユーザー

2019/10/25 08:19

バージョンを変えたところ簡単にやりたいことが実現できました ありがとうございました
guest

0

以下のコードでうまくいくかと思います。

JavaScript

1const array = [[{}, {}, {}], [{}, {}]] 2 3let result = [] 4 5for(let ar of array) { // ここで外側の配列から内側の配列を取得 6 result = result.concat(ar) // result に ar をくっ付ける 7} 8console.log(result) // [{}, {}, {}, {}, {}]

投稿2019/10/23 08:35

nerianighthawk

総合スコア544

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/10/23 09:41

無事にできました ありがとうございました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問