簡體   English   中英

將年、月和日字段轉換為日期以進行數學運算

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM