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

ดึงค่าต่ำสุดอันดับสองจากอาร์เรย์โดยไม่เรียงลำดับ JavaScript

เรามีอาร์เรย์ของตัวเลข และต้องเขียนฟังก์ชันที่คืนค่าค่าต่ำสุดอันดับสองจากอาร์เรย์

ตัวอย่างเช่น - ถ้าอาร์เรย์คือ:

const arr = [67, 87, 56, 8, 56, 78, 54, 67, 98, 56, 54];

ผลลัพธ์ควรเป็น:

54

เพราะ 54 เป็นค่าที่น้อยที่สุดอันดับสองหลังจาก 8

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

const arr = [67, 87, 56, 8, 56, 78, 54, 67, 98, 56, 54];

const minimumIndex = arr => {
  return arr.indexOf(Math.min(...arr));
};

const secondMinimum = arr => {
  const copy = arr.slice();
  copy.splice(minimumIndex(copy), 1);
  return copy[minimumIndex(copy)];
};

console.log(secondMinimum(arr));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็นดังนี้:

54