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

ค้นหาตำแหน่งดัชนีของอาร์เรย์ภายในอาร์เรย์ JavaScript


สมมุติว่าเรามีอาร์เรย์แบบนี้ -

const arr = [
   [1,0],
   [0,1],
   [0,0]
];

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์เช่นอาร์กิวเมนต์แรกและอาร์เรย์ของตัวเลขสองตัวเป็นอาร์กิวเมนต์ที่สอง

ฟังก์ชันของเราควรตรวจสอบว่าอาร์เรย์ที่กำหนดโดยอินพุตที่สองมีอยู่ในอาร์เรย์ดั้งเดิมของอาร์เรย์หรือไม่

ตัวอย่าง

const arr = [ [1,0], [0,1], [0,0] ];
 const sub = [0, 0];
const matchEvery = (arr, ind, sub) => arr[ind].every((el, i) => el == sub[i]);
const searchForArray = (arr = [], sub = []) => {
   let ind = -1;
   let {
      length: len } = arr;
      while (len--) {
         if (arr[len].length === sub.length && matchEvery(arr, len, sub)){
            ind = len;
            break;
      };
   };
   return ind;
};
console.log(searchForArray(arr, sub));

ผลลัพธ์

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

2