---
title: plus – ฟังก์ชันบวกระยะเวลาเข้ากับวันที่
url: https://www.thepexcel.com/functions/n8n/date-time-functions/plus-n8n/
type: function-explainer
program: n8n
syntax: "{{ $json.date.plus(duration) }}"
date: 2025-12-19
scores:
  popularity: 8
  difficulty: 3
  usefulness: 8
---

# plus – ฟังก์ชันบวกระยะเวลาเข้ากับวันที่

> บวกระยะเวลาเข้ากับวันที่

## คำอธิบาย

plus() บวกระยะเวลาเข้ากับ DateTime object โดยรับ duration object หรือตัวเลข (milliseconds) เป็น argument ส่วนตัวผมชอบใช้แบบ duration object มากกว่า เพราะอ่านง่ายครับ เช่น {days: 7, hours: 2} สามารถบวกได้หลายหน่วยพร้อมกัน ที่เจ๋งคือ method นี้คำนวณวันที่อย่างถูกต้องแม้เจอ DST หรือปีอธิกสุรทิน return ค่าเป็น DateTime object ใหม่ที่สามารถ chain ต่อกับ method อื่นได้เลย เช่น .format() หรือ .diff()

## Syntax

```excel
{{ $json.date.plus(duration) }}
```

**Variant**

```excel
{{ $json.date.plus({days: 7}) }}
```

บวกจำนวนวัน ใช้บ่อยที่สุดสำหรับ lead time และ scheduling

**Variant**

```excel
{{ $json.date.plus({hours: 3, minutes: 30}) }}
```

บวกหลายหน่วยพร้อมกัน เช่น ชั่วโมงและนาที

**Variant**

```excel
{{ now().plus({months: 1}) }}
```

ใช้กับ now() เพื่อคำนวณวันที่ในอนาคตจากเวลาปัจจุบัน

## Arguments

| Name | Required | Type | Default | Description |
| --- | --- | --- | --- | --- |
| duration | Yes | object\|number |  | Duration object ที่กำหนดระยะเวลาที่ต้องการบวก รองรับ keys: years, months, weeks, days, hours, minutes, seconds, milliseconds หรือเป็นตัวเลข (milliseconds) เช่น {days: 7} หรือ {hours: 2, minutes: 30} หรือ 3600000 (1 ชั่วโมง) |

## เคสการใช้งาน

### กำหนด Lead Time สำหรับ Order

บวกจำนวนวันทำการเข้ากับวันสั่งซื้อเพื่อคำนวณวันที่จัดส่งโดยประมาณ ใช้ใน e-commerce workflow

_เหมาะกับ:_ order-processing

### คำนวณวันหมดอายุของ Subscription

บวกเดือนหรือปีเข้ากับวันเริ่มต้น subscription เพื่อกำหนดวันหมดอายุและส่งการแจ้งเตือนล่วงหน้า

_เหมาะกับ:_ subscription-management

### สร้างตารางการทำงานอัตโนมัติ

คำนวณวันที่และเวลาสำหรับ task ถัดไปโดยบวก interval เข้ากับเวลาปัจจุบัน เช่น meeting ทุก 2 สัปดาห์

_เหมาะกับ:_ scheduling

### เพิ่มระยะเวลา Buffer สำหรับ SLA

บวกชั่วโมงหรือวันเข้ากับเวลาที่ได้รับ ticket เพื่อคำนวณ deadline ตาม SLA agreement

_เหมาะกับ:_ sla-tracking

## ตัวอย่าง

### 1. ตัวอย่างที่ 1: บวกวัน (Lead Time พื้นฐาน)

```excel
{{ toDateTime('2024-12-17').plus({days: 7}) }}
```

**ผลลัพธ์:** `2024-12-24T00:00:00.000Z`

บวก 7 วันเข้ากับวันที่ 17 ธันวาคม 2024 ได้ ISO 8601 timestamp แสดงวันที่ 24 ธันวาคม 2024 ส่วนตัวผมใช้กับการคำนวณวันจัดส่งสินค้า (7-day delivery) บ่อยมากครับ
.
ตัวอย่างการใช้งานจริง:
สมมติว่า $json.orderDate = '2024-12-17'
{{ toDateTime($json.orderDate).plus({days: 7}) }}
ได้ผลลัพธ์ 2024-12-24T00:00:00.000Z
.
ถ้าต้องการแสดงเป็นภาษาไทย ให้ใช้ .format('dd MMM yyyy') ต่อท้ายครับ

### 2. ตัวอย่างที่ 2: บวกเดือนสำหรับ Subscription Renewal

```excel
{{ now().plus({months: 1}) }}
```

**ผลลัพธ์:** `2025-01-17T...`

บวก 1 เดือนจากเวลาปัจจุบันเพื่อคำนวณวันต่ออายุ subscription ถัดไป ที่เจ๋งคือ Luxon จัดการจำนวนวันในแต่ละเดือนโดยอัตโนมัติ ไม่ต้องกังวลว่าเดือนมี 28, 30, หรือ 31 วัน 💡
.
ตัวอย่างการใช้งานจริง:
สมมติว่า $json.subscriptionStart = '2024-12-17'
{{ toDateTime($json.subscriptionStart).plus({months: 1}) }}
ได้ผลลัพธ์ 2025-01-17T00:00:00.000Z
.
ส่วนตัวผมใช้แบบนี้กับระบบ billing automation บ่อยมากครับ

### 3. ตัวอย่างที่ 3: บวกหลายหน่วยพร้อมกัน (ชั่วโมง + นาที)

```excel
{{ toDateTime($json.meetingStart).plus({hours: 2, minutes: 30}) }}
```

**ผลลัพธ์:** `เวลาสิ้นสุด meeting`

บวก 2 ชั่วโมง 30 นาทีเข้ากับเวลาเริ่ม meeting เพื่อคำนวณเวลาสิ้นสุด เอาจริงๆ นะครับ การบวกหลายหน่วยพร้อมกันแบบนี้สะดวกมากครับ
.
ตัวอย่างการใช้งานจริง:
Input: $json.meetingStart = '2024-12-17T14:00:00'
{{ toDateTime($json.meetingStart).plus({hours: 2, minutes: 30}) }}
Result: 2024-12-17T16:30:00.000Z (สิ้นสุดเวลา 16:30)
.
ใช้ใน workflow scheduling เพื่อคำนวณเวลาจบของ event ส่วนตัวผมใช้กับระบบจอง meeting room อยู่ครับ

### 4. ตัวอย่างที่ 4: บวกสัปดาห์และวัน (Recurring Task)

```excel
{{ today().plus({weeks: 2, days: 3}) }}
```

**ผลลัพธ์:** `วันที่ 17 วันจากวันนี้`

บวก 2 สัปดาห์ (14 วัน) + 3 วัน = 17 วันเข้ากับวันนี้ เพื่อคำนวณวันครบกำหนดของ task ที่เจ๋งคือสามารถใช้ใน loop เพื่อสร้างตาราง invoice ทั้งปีได้เลยครับ 😎
.
ตัวอย่าง recurring invoice:
สมมติว่า $json.lastInvoiceDate = '2024-12-01'
{{ toDateTime($json.lastInvoiceDate).plus({weeks: 2}) }}
Result: 2024-12-15T00:00:00.000Z
.
ส่วนตัวผมใช้แบบนี้กับ workflow automation ที่ต้องทำงานซ้ำทุก 2 สัปดาห์ครับ

### 5. ตัวอย่างที่ 5: Chain กับ format() สำหรับ Display

```excel
{{ $json.createdAt.plus({days: 30}).format('dd/MM/yyyy') }}
```

**ผลลัพธ์:** `16/01/2025`

บวก 30 วันเข้ากับวันที่สร้าง แล้ว chain ด้วย format() เพื่อแสดงผลในรูปแบบไทย เอาจริงๆ นะครับ การ chain method แบบนี้ทำให้โค้ดอ่านง่ายและเขียนสั้นลงเยอะครับ ✨
.
Workflow จริง (Send Email แจ้งวันหมดอายุ):
Input: $json.createdAt = '2024-12-17'
{{ toDateTime($json.createdAt).plus({days: 30}).format('dd MMMM yyyy') }}
Result: 16 January 2025
.
ใช้ใน email template: 'Your trial expires on {{ ... }}'
ส่วนตัวผมใช้แบบนี้กับระบบ trial period notification บ่อยมากครับ

## หมายเหตุเพิ่มเติม

ส่วนตัวผมใช้ plus() บ่อยมากครับ โดยเฉพาะเวลาทำ workflow automation ที่ต้องคำนวณวันที่ในอนาคต ที่เจ๋งคือมันเป็น method ของ Luxon DateTime object ที่ทำงานได้เนียนมาก 💡
.
สิ่งที่ต้องจำ:
• ต้องใช้กับ DateTime object เท่านั้น (ไม่ใช่ string) ใช้ toDateTime() แปลงก่อนถ้าข้อมูลเป็น string
• plus() return DateTime ใหม่ (immutable) สามารถ chain method ต่อได้ เช่น .plus().format() หรือ .plus().diff()
• สามารถบวกหลายหน่วยพร้อมกัน เช่น {days: 7, hours: 2} เพื่อความแม่นยำ
.
ที่ต้องระวังคือ Luxon จัดการ DST และปีอธิกสุรทินอัตโนมัติ การบวก days จะเลื่อนวันตามปฏิทิน (calendar arithmetic) ส่วนการบวก hours/minutes/seconds จะเพิ่ม timestamp แบบแม่นยำ (time arithmetic) เอาจริงๆ คุณไม่ต้องกังวลเรื่องนี้มาก แต่ดีที่ควรรู้ไว้ครับ 😎

## คำถามที่พบบ่อย

**Q: plus() ต่างจาก minus() อย่างไร?**

plus() บวกระยะเวลาเข้ากับวันที่ (คำนวณอนาคต) ส่วน minus() ลบระยะเวลาออก (คำนวณอดีต) เรียกได้ว่าเป็นคู่กันเลยครับ ใช้ plus() สำหรับ lead time, expiry date, scheduling และใช้ minus() สำหรับ lookback period, age calculation ส่วนตัวผมใช้ทั้งคู่บ่อยมากในงาน automation นะครับ

**Q: plus() จัดการปีอธิกสุรทิน (leap year) ได้หรือไม่?**

ได้ครับ ที่เจ๋งคือ Luxon จัดการปีอธิกสุรทินและจำนวนวันในแต่ละเดือนโดยอัตโนมัติ เช่น plus({months: 1}) จาก 31 มกราคม จะได้ 28/29 กุมภาพันธ์ (ขึ้นกับปี) ไม่ใช่วันที่ผิดพลาด เอาจริงๆ นะครับ คุณไม่ต้องกังวลเรื่องนี้เลย Luxon ดูแลให้หมดแล้วครับ 💡

**Q: plus() รองรับ DST (Daylight Saving Time) ไหม?**

รองรับครับ Luxon DateTime คำนวณ DST โดยอัตโนมัติ ที่ต้องรู้คือการบวก days จะเลื่อนวันตามปฏิทิน (calendar shift) ส่วนการบวก hours จะเพิ่ม timestamp แบบแม่นยำ (รวม DST adjustment) ส่วนตัวผมเคยเจอปัญหานี้ตอนทำงานกับ timezone ที่มี DST เลยรู้ว่า Luxon จัดการได้ดีมากครับ

**Q: ใช้ plus() กับ toDateTime() อย่างไร?**

ต้องแปลง string เป็น DateTime ก่อนด้วย toDateTime() เช่น toDateTime($json.date).plus({days: 7}) ที่ต้องระวังคือไม่สามารถใช้ plus() กับ string โดยตรงได้นะครับ ต้องแปลงก่อนเสมอ ส่วนตัวผมแนะนำให้จำกฎนี้ไว้เลยครับ: string → toDateTime() → plus/minus/format

**Q: plus() return ค่าแบบไหน?**

Return ค่าเป็น DateTime object ใหม่ (immutable) ไม่ได้แก้ไข object เดิมครับ ที่เจ๋งคือสามารถ chain method ต่อได้เลย เช่น .plus({days: 7}).format('yyyy-MM-dd') หรือ .plus({months: 1}).diff(otherDate) ส่วนตัวผมชอบใช้แบบ chain แบบนี้มากครับ เพราะโค้ดอ่านง่ายและเขียนสั้น 😎

## ฟังก์ชันที่เกี่ยวข้อง

- [minus – ลบระยะเวลาจาก DateTime](https://www.thepexcel.com/functions/n8n/date-time-functions/minus-n8n/)
- [toDateTime – แปลงข้อมูลเป็นวัตถุวันที่และเวลา](https://www.thepexcel.com/functions/n8n/type-functions/to-date-time-n8n/)
- [$now – อ็อบเจ็กต์ Luxon สำหรับวันที่และเวลาปัจจุบัน](https://www.thepexcel.com/functions/n8n/other/now-n8n/)
- [$today – อ็อบเจ็กต์ Luxon สำหรับวันที่ปัจจุบัน (เที่ยงคืน)](https://www.thepexcel.com/functions/n8n/other/today-n8n/)
- [diff – หาผลต่างระหว่างสองวันที่](https://www.thepexcel.com/functions/n8n/date-time-functions/diff-n8n/)
- [.format() – จัดรูปแบบค่าเป็นสตริงตามรูปแบบที่กำหนด](https://www.thepexcel.com/functions/n8n/math-functions/format-n8n/)

## แหล่งข้อมูลเพิ่มเติม

- [n8n Date & Time Functions Documentation](https://docs.n8n.io/code/builtin/data-transformation-functions/dates/) _(documentation)_
- [n8n Luxon DateTime Cookbook](https://docs.n8n.io/code/cookbook/luxon/) _(guide)_
- [Luxon DateTime.plus() API Reference](https://moment.github.io/luxon/api-docs/index.html#datetimeplus) _(documentation)_

---

_Source: [https://www.thepexcel.com/functions/n8n/date-time-functions/plus-n8n/](https://www.thepexcel.com/functions/n8n/date-time-functions/plus-n8n/)_
