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