เรามีอาร์เรย์สตริงที่ซ้อนกัน และเราต้องเขียนฟังก์ชันที่ยอมรับอาร์เรย์และสตริงการค้นหา แล้วคืนค่าจำนวนครั้งที่สตริงนั้นปรากฏในอาร์เรย์ที่ซ้อนกัน
ดังนั้น มาเขียนโค้ดสำหรับสิ่งนี้ เราจะใช้การเรียกซ้ำที่นี่เพื่อค้นหาภายใน 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