JavaScriptを使用した配列の要素のディープカウント
問題
要素のネストされた配列を受け取り、配列に存在する要素の深い数を返すJavaScript関数を作成する必要があります。
入力
const arr = [1, 2, [3, 4, [5]]];
出力
const output = 7;
レベル1の要素は2であり、レベル2の要素は2であり、レベル3の要素は1であるため、ディープカウントは7です。
例
以下はコードです-
const arr = [1, 2, [3, 4, [5]]]; const deepCount = (arr = []) => { return arr .reduce((acc, val) => { return acc + (Array.isArray(val) ? deepCount(val) : 0); }, arr.length); }; console.log(deepCount(arr));
コードの説明
Array.prototype.reduce()メソッドを使用して配列を反復処理し、いずれかの反復でネストされた配列に遭遇した場合は、関数を再帰的に呼び出しました。
出力
7
-
Javascriptを使用してキューに要素を追加する
要素をキューにエンキューするということは、それらを配列の最後に追加することを意味します。コンテナ配列の最後をキューの末尾にします。これは、コンテナ配列に関してすべての挿入操作を実行するためです。 したがって、次のようにエンキュー関数を実装できます- 例 enqueue(element) { // Check if Queue is full if (this.isFull()) { console.log("Queue Overflow!");
-
JavaScriptオブジェクトの配列で配列のメソッドを使用していますか?
以下は、JavaScriptオブジェクトの配列で配列のメソッドを使用するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <styl