Thep Excel

10 functions

$if() เป็น n8n built-in convenience function สำหรับทำ conditional logic (if-else) ใน expressions ทำงานเหมือน ternary operator (condition ? true : false) แต่อ่านง่ายกว่า คืนค่าตาม condition ที่กำหนด เหมาะสำหรับแปลง status code เป็นข้อความ ให้ค่า default กรณีข้อมูลหายไป หรือจัดหมวดหมู่ข้อมูลตามเงื่อนไข

Syntax
$if(condition, valueIfTrue, valueIfFalse)

$input.all() เป็น method ที่ดึง input items ทั้งหมดมาในครั้งเดียวเป็น array ใช้เมื่อต้องการประมวลผลหลาย items พร้อมกัน ทำ aggregation เช่น sum, average, หรือต้องการเข้าถึงข้อมูลทั้งหมดก่อนทำ transformation ต่างจาก $json ที่เข้าถึงเฉพาะ item ปัจจุบัน $input.all() ให้ภาพรวมของข้อมูลทั้งหมด สามารถใช้ array methods เช่น map, filter, reduce ได้ทันที เหมาะกับงาน batch processing และ data analysis

Syntax
$input.all()

$input.first() ดึงเฉพาะ item แรกสุดจากข้อมูลที่เข้ามาใน node ปัจจุบัน ใช้เมื่อต้องการ configuration, header row หรือข้อมูลอ้างอิงที่อยู่ตำแหน่งแรกเสมอ return เป็น item object เดียว (ไม่ใช่ array) ถ้าไม่มี items จะได้ undefined

Syntax
$input.first()

$input.item คือตัวแปรที่ใช้เข้าถึงรายการข้อมูลปัจจุบันที่กำลังประมวลผล โดยให้ข้อมูลครบถ้วนกว่า $json เพราะรวมทั้ง json data, binary files และ pairing info ไว้ด้วยกัน ส่วนใหญ่ใช้ $json ก็เพียงพอ แต่ $input.item จำเป็นเมื่อต้องการเข้าถึงไฟล์ binary หรือ track ความสัมพันธ์ระหว่าง items

Syntax
$input.item

$input.last() ดึงเฉพาะ item สุดท้ายจากข้อมูลที่เข้ามาใน node ปัจจุบัน ใช้เมื่อต้องการสรุปผล footer หรือข้อมูลสุดท้ายที่เก็บไว้ทีแล้ว return เป็น item object เดียว ถ้าไม่มี items จะได้ undefined

Syntax
$input.last()

$itemIndex คือตัวแปรที่บอกตำแหน่ง (index) ของ item ปัจจุบันที่กำลังประมวลผล เริ่มนับจาก 0 (zero-based) ใช้สำหรับติดตาม item ใน multi-item workflow, สร้าง running number, หรือทำ conditional logic ตามตำแหน่ง เช่น skip item แรกหรือทำอะไรพิเศษกับ item สุดท้าย

Syntax
$itemIndex

$json เป็นตัวแปรพื้นฐานที่สำคัญที่สุดใน n8n ใช้เข้าถึงข้อมูล JSON ของ item ปัจจุบันที่กำลังประมวลผล ทำงานคล้าย this หรือ current row ใน Excel สามารถเข้าถึงข้อมูลได้ทั้งแบบ dot notation ($json.field) และ bracket notation ($json['field']) ใช้บ่อยที่สุดในทุก workflow เพราะเป็นจุดเริ่มต้นของการเข้าถึงข้อมูล

Syntax
$json

$now เป็นอ็อบเจ็กต์ Luxon DateTime ที่คืนค่า timestamp ปัจจุบัน (เทียบเท่า DateTime.now()) รองรับการจัดรูปแบบด้วย .toFormat(), การคำนวณด้วย .plus()/.minus(), และการแปลงเขตเวลาด้วย .setZone() เหมาะสำหรับสร้าง timestamp แม่นยำในการบันทึกข้อมูล

Syntax
$now

$today เป็นอ็อบเจ็กต์ Luxon DateTime ที่คืนค่าวันที่ปัจจุบันโดยตั้งเวลาเป็นเที่ยงคืน (00:00:00.000) รองรับการจัดรูปแบบด้วย .toFormat(), การคำนวณด้วย .plus()/.minus(), และการเปรียบเทียบวันที่ เหมาะสำหรับตรวจสอบวันหมดอายุ กรองข้อมูลตามวัน

Syntax
$today

max หาค่าที่มากที่สุดจากอาร์เรย์ของตัวเลข ฟังก์ชันนี้มีประโยชน์ในการวิเคราะห์ข้อมูล เช่นหาราคาสูงสุดของสินค้า คะแนนสูงสุด หรือปริมาณการขายสูงสุด

Syntax
max(array)