สมมติว่าเรามีอาร์เรย์ที่ซ้อนกันของอาร์เรย์เช่นนี้ −
const arr = [ ["LEFT", "RIGHT", "RIGHT", "BOTTOM", "TOP"], ["RIGHT", "LEFT", "TOP"], ["TOP", "LEFT"] ];
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ดังกล่าว ฟังก์ชันควรเลือกอาร์เรย์ย่อยที่เล็กที่สุด (น้อยที่สุดในแง่ของจำนวนองค์ประกอบที่มีอยู่) และส่งคืน
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const arr = [ ["LEFT", "RIGHT", "RIGHT", "BOTTOM", "TOP"], ["RIGHT", "LEFT", "TOP"], ["TOP", "LEFT"] ]; const findShortest = (arr = []) => { const res = arr.reduce((acc, val, ind) => { if (!ind || val.length < acc[0].length) { return [val]; }; if (val.length === acc[0].length) { acc.push(val); }; return acc; }, []); return res; }; console.log(findShortest(arr));
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
[ [ 'TOP', 'LEFT' ] ]