Thep Excel

every – ตรวจสอบว่าทุกค่าตรงเงื่อนไข

ตรวจสอบว่าทุกรายการใน array ตรงตามเงื่อนไขหรือไม่ คืนค่า true ถ้าทั้งหมดผ่าน false ถ้ามีสักอันไม่ผ่าน

=$json.array.every(item => condition)

By ThepExcel AI Agent
16 December 2025

Function Metrics


Popularity
6/10

Difficulty
4/10

Usefulness
6/10

Syntax & Arguments

=$json.array.every(item => condition)

Argument Type Required Default Description
callback Function Yes ฟังก์ชันที่ทดสอบแต่ละค่า รับพารามิเตอร์ (element, index, array) และต้องคืนค่า true หรือ false
thisArg any Optional ค่า this ที่จะใช้ในเมื่อเรียกใช้ callback (ใช้น้อยมากใน n8n)

How it works

Scenario 1

General usage

Examples

ตัวอย่างพื้นฐาน – ตรวจสอบเลขคู่
{{ [2, 4, 6].every(n => n % 2 === 0) }}
ตรวจสอบว่าทุกตัวเลขเป็นเลขคู่ – 2, 4, 6 ล้วนหารด้วย 2 ลงตัว จึงได้ true
n8n Formula:

={{ [2, 4, 6].every(n => n % 2 === 0) }}

Result:

true

ตรวจสอบสถานะ User
{{ $json.users.every(u => u.isActive === true) }}
ตรวจสอบว่าทุก user มี isActive เป็น true ถ้ามี user ใดที่ inactive จะได้ false ทันที (short-circuit)
n8n Formula:

={{ $json.users.every(u => u.isActive === true) }}

Result:

true/false

ตรวจสอบว่าทุกราคาเป็นจำนวนบวก
{{ $json.products.every(p => p.price > 0) }}
ตรวจสอบว่าทุกสินค้ามีราคามากกว่า 0 ใช้เป็น validation ก่อนประมวลผลออร์เดอร์ ถ้ามีสินค้าราคาติดลบหรือ 0 จะได้ false
n8n Formula:

={{ $json.products.every(p => p.price > 0) }}

Result:

false

ตรวจสอบความยาว String
{{ $json.passwords.every(pwd => pwd.length >= 8) }}
ตรวจสอบว่าทุก password ยาวอย่างน้อย 8 ตัวอักษร ถ้าสักอันสั้นกว่า 8 จะได้ false ทันทีโดยไม่ตรวจเหลือ
n8n Formula:

={{ $json.passwords.every(pwd => pwd.length >= 8) }}

Result:

true/false

ตรวจสอบ Object Property
{{ $json.orders.every(order => order.customerId && order.total > 0) }}
ตรวจสอบว่าทุกออร์เดอร์มี customerId และ total มากกว่า 0 ใช้ได้ดีสำหรับ validate ข้อมูลจากระบบต่างๆ
n8n Formula:

={{ $json.orders.every(order => order.customerId && order.total > 0) }}

Result:

true/false

FAQs

every() คืน true เสมอสำหรับ array ว่าง?

ใช่ทุกประการ empty array จะคืน true เสมอ นี่เรียกว่า ‘vacuous truth’ ในตรรมศาสตร์ เพราะว่าไม่มีรายการใดที่ไม่ผ่านเงื่อนไข

ต่างจาก some() อย่างไร?

every() ต้องตรงทั้งหมด some() ต้องตรงบางค่า – every ใช้ AND, some ใช้ OR

Performance ดีไหมเมื่อ array มีรายการเยอะ?

ดีมากเพราะ every() หยุดวนตั้งแต่เจอค่าแรกที่ไม่ตรง (short-circuit) ไม่จำเป็นต้องเช็ครายการที่เหลือ

ใช้ได้ใน n8n Code node หรือ Set node ด้วยหรือ?

ใช่ได้ – ใช้ใน Set node ด้วยเครื่องหมาย {{ }} ก็ได้ แต่ Code node ไม่ต้องใช้เครื่องหมายนี้

Resources & Related

Additional Notes

every() เป็น JavaScript array method มาตรฐาน ที่ใช้ได้ใน n8n expressions และ Code node มันจะตรวจสอบว่าทุกรายการในอาร์เรย์ตรงตามเงื่อนไขที่เรากำหนด คืนค่า true ถ้าทั้งหมดผ่านการทดสอบ หรือ false ถ้ามีสักรายการไม่ผ่าน

สิ่งที่เจ๋งคือ every() จะหยุดตรวจสอบทันทีที่เจอค่าที่ไม่ตรงเงื่อนไข (short-circuit evaluation) ทำให้มันประหยัด performance แม้ array จะมีรายการเยอะ นั่นคือเหตุผลที่ผมชอบใช้มันในการ validate ข้อมูลก่อนส่งไป downstream nodes

ส่วนตัวผม ผมใช้ every() บ่อยมากในการ validate workflow ก่อนประมวลผลต่อ เช่น ตรวจสอบว่าทุกรายการขาย (orders) มีลูกค้า หรือทุกอีเมลในรายชื่อถูกรูปแบบ หรือทุกราคาเป็นจำนวนบวก ด้วยการคำนวณแบบนี้ workflow ของผมจึงเชื่อถือได้มากขึ้น

Leave a Reply

Your email address will not be published. Required fields are marked *