$input.last() ดึงเฉพาะ item สุดท้ายจากข้อมูลที่เข้ามาใน node ปัจจุบัน ใช้เมื่อต้องการสรุปผล footer หรือข้อมูลสุดท้ายที่เก็บไว้ทีแล้ว return เป็น item object เดียว ถ้าไม่มี items จะได้ undefined
=$input.last()
=$input.last()
ดึงยอดรวมหรือ summary information ที่คำนวณแล้วส่งมาเป็น item สุดท้าย
Extract timestamp ล่าสุดจาก time-series data
ดึง footer หรือ conclusion จาก dataset
เช็คสถานะสุดท้ายของ sequential process
{{ $input.last().json.summary }}={{ $input.last().json.summary }}
{ total: 5000, count: 25, avgValue: 200 }
{{ $input.last().json.timestamp }}={{ $input.last().json.timestamp }}
2025-12-23T10:30:00Z
{{ $input.last().json.status }}={{ $input.last().json.status }}
completed
{{ $input.last()?.json?.amount ?? 0 }}={{ $input.last()?.json?.amount ?? 0 }}
5000 หรือ 0
{{ $input.last() ? $input.last().json.value : 'No data available' }}={{ $input.last() ? $input.last().json.value : 'No data available' }}
1500 หรือ No data available
จะได้ undefined กลับมาครับ ถ้าพยายามเข้าถึง .json ต่อจะเกิด error ทันที ดังนั้นควรใช้ optional chaining ($input.last()?.json) หรือเช็คด้วย ternary operator ก่อนเข้าถึงข้อมูลเสมอนะครับ
ผลลัพธ์เหมือนกันครับ แต่ $input.last() อ่านชัดเจนกว่าว่าเราต้องการ item สุดท้าย code สั้นกว่าและเข้าใจง่ายกว่า นอกจากนี้ยัง optimize performance ดีกว่าเพราะไม่ต้องเรียก all() สองครั้งแล้ว handle edge case ดีกว่า
$input.first() ดึง item แรก ส่วน $input.last() ดึง item สุดท้าย ใช้ ternary operator หรือเทคนิค arrow functions ใช้ $input.first() เมื่อต้องการ config/header ใช้ $input.last() เมื่อต้องการ summary/result สุดท้ายครับ
$input.last() เป็นเมธอดสำหรับดึงข้อมูลรายการสุดท้ายจากอินพุตของโหนดปัจจุบัน
ที่เจ๋งคือมันคืนค่าเป็นออบเจ็กต์รายการเดี่ยวๆ ไม่ใช่อาร์เรย์เหมือน $input.all() ทำให้ใช้งานง่ายกว่าเวลาต้องการแค่ข้อมูลชิ้นสุดท้าย ไม่ต้องคำนวณ index หรือ array length เอง
ส่วนตัวผมใช้บ่อยมากในรูปแบบ reduce operations ที่คำนวณสะสมไปเรื่อยๆ แล้วรายการสุดท้ายคือผลลัพธ์สุดท้าย หรือใน time-series data ที่ต้องการค่าล่าสุด เหมาะสำหรับดึง summary, conclusion, หรือ final result จากชุดข้อมูลครับ
ที่ต้องระวังคือถ้าไม่มีรายการเลย จะคืนค่าว่างเปล่า ดังนั้นควรเช็คด้วยเครื่องหมายคำถามจุดก่อนเข้าถึงข้อมูลนะครับ 😎