まず、フラット化された配列とは何かを理解しましょう。フラット化された配列は配列ですが、この配列は多次元配列、ネストされた配列、または別の配列を含む配列の形式です。
フラット化は、多次元配列をフラット化として知られる 1 つの 1 次元配列に減らすのに役立つ 1 つのアプローチまたはテクニックです。
プロジェクトに取り組んでいるときや問題を解決しているときに、この種のデータが必要になることがあります。その場合は、フラット化された配列を使用してデータセットのグループを渡すと役立ちます。
例:
// This is a flattened array let arr = [1,44, [2, [3,9], 67], 9];
この種の問題を解決するには複数の方法がありますが、ここでは再帰法を使用して説明します。これは、この種の問題を解決するための最良のアプローチの 1 つです。
ここでは、再帰の詳細については説明しませんが、概要について少し説明します。さらに詳しく知りたい場合は、別の記事を作成します。
再帰は、反復的な作業の問題を解決するためのプログラミング アプローチです。再帰は、指定された特定の条件に一致しなくなるまで直接または間接的に自分自身を呼び出します。一致した場合、関数は呼び出し自体を停止します。
// This is a flattened array // Input: let arr = [1,44, [2, [3,9], 67], 9]; // Function Defin function recur(a) { let newArr = []; for (let i =0 ; i < a.length; i++) { const element = a[i]; if (Array.isArray(element)) { // Function calling itself recursion newArr.push(...recur(element)) } else { newArr.push(element) } } return newArr; } console.log(recur(arr)) Output: [1,44,2,3,9, 67, 9] // We can also write the same code using for each: function flattenArray(items) { const flat = []; items.forEach(item => { if (Array.isArray(item)) { flat.push(...flatten(item)); } else { flat.push(item); } }); return flat; } onsole.log(flattenArray(arr)) output: [1,44,2,3,9, 67, 9]
以上がフラット化配列とは何ですか?JavaScript で再帰関数を使用してフラット化配列の問題を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。