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

เมธอด Array.findIndex() ใน JavaScript

Array.findIndex()

คืน Index แรก ที่สมาชิกผ่านเงื่อนไข Callback หาไม่เจอ คืน -1 หยุดค้นหาทันทีที่เจอ (Short-circuit)

ไวยากรณ์

arr.findIndex(callback(element[, index[, array]])[, thisArg])

ตัวอย่าง

<html> <body> <p id="demo"></p> <script>
  var wages = [6000, 10000, 17000, 28000, 30000];
  
  function checkSal(wage) {
    return wage >= 15000;
  }
  
  document.getElementById('demo').innerHTML = wages.findIndex(checkSal);
</script> </body> </html>

ผลลัพธ์

2

คำอธิบาย

  • Index 0: 6000 < 15000 → ไม่ผ่าน
  • Index 1: 10000 < 15000 → ไม่ผ่าน
  • Index 2: 17000 ≥ 15000 → ผ่าน! คืน 2 ทันที
  • Index 3, 4: ไม่ได้เช็กแล้ว (Short-circuit)

เปรียบเทียบเมธอดค้นหา

MethodReturnUse Case
indexOf()Indexค้นหาค่าที่แน่นอน (Primitive)
findIndex()Indexค้นหาด้วยเงื่อนไข (Callback)
find()Valueค้นหาค่าที่ผ่านเงื่อนไข
filter()Arrayค้นหาทุกค่าที่ผ่านเงื่อนไข