[英]Convert Year, Month and Day fields into a date to do math
所有,我有一個包含三個單獨文本字段的表單。 年、月、日。 我想弄清楚如何組合它們並創建一個日期(日期格式無關緊要),然后從另一個日期中減去它以找到它們之間的天數。
問題是……我是 JavaScript 的新手,在網上找不到任何可用作教程的內容。
如果有人能讓我開始,我將不勝感激。
我的文本字段是字面意思(“年”、“月”和“日”)。 我猜有一種方法可以連接三個數字然后轉換為日期? 下面是我所在的地方,我知道它很遠,所以......
var cYar = this.getField("Year").value
var cMon = this.getField("Month").value
var cDay = this.getField("Day").value
var cSrt = concat(cYar,'-',cMon,'-',cDay)as date
var cYar2 = this.getField("lveyear").value
var cMon2 = this.getField("lvemon").value
var cDay2 = this.getField("lveday").value
var cEnd = concat(cYar2,'-',cMon2,'-',cDay2)as date
this.getField("numdays")event.value = (cEnd-Csrt)+1
提前致謝...
Date
構造函數支持您的所有數據。 參考 MDN
new Date(year, monthIndex[, day[, hours[, minutes[, seconds [, milliseconds]]]]])
日期對象支持使用 Epoch 時間戳操作的數學運算。
請注意,monthIndex 從January = 0
開始January = 0
const convertToDate = (yyyy, mm, dd) => new Date(yyyy, mm - 1, dd);
convertToDate(2020, 09, 19) - convertToDate(2020, 09, 18)
輸出: 86400000
(24 小時以毫秒為單位)
如果您想獲得天數:
const dateA = convertToDate(cYar, cMon, cDay);
const dateB = convertToDate(cYar2, cMon2, cDay2);
const numDays = parseInt((dateB - dateA) / 86400000);
這是一個小提琴: https : //jsfiddle.net/d2v8hpc1/
您可能會查找Date
對象的描述,它是 JavaScript 核心的一部分。
您還應該查看 Acrobat JavaScript 文檔中的util.scand()
和util.printd()
方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.