Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

配列を再帰的にループし、JavaScriptでアイテムの数を返しますか?


配列と検索クエリを受け取り、ネストされた配列内のその検索クエリの数を返す関数、たとえばsearchRecursively()を作成する必要があります。

たとえば、配列が-

で指定されている場合
const names = ["rakesh", ["kalicharan", "krishna", "rakesh", "james", ["michael", "nathan", "rakesh", "george"]]];

次に-

searchRecursively(names, ‘’rakesh’);

配列に合計3回出現するため、3を返す必要があります。したがって、この再帰関数のコードを書いてみましょう-

const names = ["rakesh", ["kalicharan", "krishna", "rakesh", "james",
["michael", "nathan", "rakesh", "george"]]];
const searchRecursively = (arr, query, count = 0, len = 0) => {
   if(len < arr.length){
      if(Array.isArray(arr[len])){
         return searchRecursively(arr[len], query, count, 0);
      };
      if(arr[len] === query){
         return searchRecursively(arr, query, ++count, ++len);
      };
      return searchRecursively(arr, query, count, ++len);
   };
   return count;
};
console.log(searchRecursively(names, "rakesh"));

出力

コンソールの出力は-

になります
3

  1. Javascriptで配列をループする

    Javascriptで配列をループする方法はたくさんあります。 JavascriptのForループ ループのためにそれらから始めましょう。 jsのforループには2つのバリエーションがあります。最初の形式は、init、condition、exprループです。これにより、最初のステートメントが初期化され、各反復でexprが実行され、条件がチェックされます。 たとえば、 var step; for (step = 0; step < 5; step++) {    console.log('Taking step ' + step); } これに

  2. 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> <style>