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

วิธีหาค่าสูงสุด (Maximum) ของ Array ใน JavaScript

หาค่าสูงสุดของ Array

วิธี 1: Math.max() + Spread Operator (แนะนำ)

<script>
  const arr = [6, 39, 55, 1, 44];
  const max = Math.max(...arr);
  document.write(max); // 55
</script>

วิธี 2: Math.max.apply() (รุ่นเก่า)

<script>
  function maximum(value) {
    if (!Array.isArray(value)) return false;
    return Math.max.apply(null, value);
  }
  document.write(maximum([6, 39, 55, 1, 44])); // 55
</script>

วิธี 3: sort() + length (ไม่แนะนำ - Mutates Array)

<script>
  var numbers = [6, 39, 55, 1, 44];
  numbers.sort((a, b) => a - b); // เรียงน้อยไปมาก
  document.write(numbers[numbers.length - 1]); // 55
</script>

เปรียบเทียบ

วิธีMutates Array?Performanceรองรับ Empty Array
Math.max(...arr)ไม่O(n)-Infinity (ต้องเช็กก่อน)
Math.max.apply()ไม่O(n)-Infinity
sort()ใช่O(n log n)Error

แนะนำ: ใช้ Math.max(...arr) สั้น อ่านง่าย ไม่ Mutate Array