Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การนับจำนวนครั้งที่รายการปรากฏในอาร์เรย์หลายมิติใน JavaScript


เรามีอาร์เรย์สตริงที่ซ้อนกัน และเราต้องเขียนฟังก์ชันที่ยอมรับอาร์เรย์และสตริงการค้นหา แล้วคืนค่าจำนวนครั้งที่สตริงนั้นปรากฏในอาร์เรย์ที่ซ้อนกัน

ดังนั้น มาเขียนโค้ดสำหรับสิ่งนี้ เราจะใช้การเรียกซ้ำที่นี่เพื่อค้นหาภายใน Nestedarray และรหัสสำหรับสิ่งนี้จะเป็น -

ตัวอย่าง

const arr = [
   "apple",
   ["banana", "strawberry","dsffsd", "apple"],
   "banana",
   ["sdfdsf","apple",["apple",["nonapple", "apple",["apple"]]]]
   ,"apple"];
   const calculateCount = (arr, query) => {
      let count = 0;
      for(let i = 0; i < arr.length; i++){
         if(arr[i] === query){
            count++;
            continue;
      };
      if(Array.isArray(arr[i])){
         count += calculateCount(arr[i], query);
      }
   };
   return count;
};
console.log(calculateCount(arr, "apple"));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็น -

7