ใช้ reduce() ตรวจสอบว่าแต่ละตัวมากกว่าตัวก่อนหน้า 1 พอดี
ตัวอย่างโค้ด
const sequenceIsConsecutive = (obj) => Boolean(obj.reduce((output, latest) =>
(output ? (Number(output.number) + 1 === Number(latest.number) ? latest : false) : false)
));
console.log("Is Consecutive=" + sequenceIsConsecutive([
{ number: '100' },
{ number: '101' },
{ number: '102' }
]));
console.log("Is Consecutive=" + sequenceIsConsecutive([
{ number: '100' },
{ number: '102' },
{ number: '104' }
]));
วิธีรันโปรแกรม
ใช้คำสั่ง node fileName.js (เช่น node demo126.js)
ผลลัพธ์
Is Consecutive=true
Is Consecutive=false