Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

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

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

มาเขียนโค้ดสำหรับนี้ เราจะใช้ recursion เพื่อค้นหาในอาร์เรย์ซ้อน โค้ดจะเป็นดังนี้:

ตัวอย่างโค้ด

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