Hướng dẫn javascript add days to current date - javascript thêm ngày vào ngày hiện tại

Tôi đã thấy đây là một nỗi đau trong JavaScript. Kiểm tra liên kết này đã giúp tôi. Bạn đã bao giờ nghĩ đến việc mở rộng đối tượng ngày.

http://pristinecoder.com/Blog/post/javascript-formatting-date-in-javascript

/*
 * Date Format 1.2.3
 * (c) 2007-2009 Steven Levithan 
 * MIT license
 *
 * Includes enhancements by Scott Trenda 
 * and Kris Kowal 
 *
 * Accepts a date, a mask, or a date and a mask.
 * Returns a formatted version of the given date.
 * The date defaults to the current date/time.
 * The mask defaults to dateFormat.masks.default.
 */

var dateFormat = function () {
    var token = /d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloSZ]|"[^"]*"|'[^']*'/g,
        timezone = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,
        timezoneClip = /[^-+\dA-Z]/g,
        pad = function (val, len) {
            val = String(val);
            len = len || 2;
            while (val.length < len) val = "0" + val;
            return val;
        };

    // Regexes and supporting functions are cached through closure
    return function (date, mask, utc) {
        var dF = dateFormat;

        // You can't provide utc if you skip other args (use the "UTC:" mask prefix)
        if (arguments.length == 1 && Object.prototype.toString.call(date) == "[object String]" && !/\d/.test(date)) {
            mask = date;
            date = undefined;
        }

        // Passing date through Date applies Date.parse, if necessary
        date = date ? new Date(date) : new Date;
        if (isNaN(date)) throw SyntaxError("invalid date");

        mask = String(dF.masks[mask] || mask || dF.masks["default"]);

        // Allow setting the utc argument via the mask
        if (mask.slice(0, 4) == "UTC:") {
            mask = mask.slice(4);
            utc = true;
        }

        var _ = utc ? "getUTC" : "get",
            d = date[_ + "Date"](),
            D = date[_ + "Day"](),
            m = date[_ + "Month"](),
            y = date[_ + "FullYear"](),
            H = date[_ + "Hours"](),
            M = date[_ + "Minutes"](),
            s = date[_ + "Seconds"](),
            L = date[_ + "Milliseconds"](),
            o = utc ? 0 : date.getTimezoneOffset(),
            flags = {
                d:    d,
                dd:   pad(d),
                ddd:  dF.i18n.dayNames[D],
                dddd: dF.i18n.dayNames[D + 7],
                m:    m + 1,
                mm:   pad(m + 1),
                mmm:  dF.i18n.monthNames[m],
                mmmm: dF.i18n.monthNames[m + 12],
                yy:   String(y).slice(2),
                yyyy: y,
                h:    H % 12 || 12,
                hh:   pad(H % 12 || 12),
                H:    H,
                HH:   pad(H),
                M:    M,
                MM:   pad(M),
                s:    s,
                ss:   pad(s),
                l:    pad(L, 3),
                L:    pad(L > 99 ? Math.round(L / 10) : L),
                t:    H < 12 ? "a"  : "p",
                tt:   H < 12 ? "am" : "pm",
                T:    H < 12 ? "A"  : "P",
                TT:   H < 12 ? "AM" : "PM",
                Z:    utc ? "UTC" : (String(date).match(timezone) || [""]).pop().replace(timezoneClip, ""),
                o:    (o > 0 ? "-" : "+") + pad(Math.floor(Math.abs(o) / 60) * 100 + Math.abs(o) % 60, 4),
                S:    ["th", "st", "nd", "rd"][d % 10 > 3 ? 0 : (d % 100 - d % 10 != 10) * d % 10]
            };

        return mask.replace(token, function ($0) {
            return $0 in flags ? flags[$0] : $0.slice(1, $0.length - 1);
        });
    };
}();

// Some common format strings
dateFormat.masks = {
    "default":      "ddd mmm dd yyyy HH:MM:ss",
    shortDate:      "m/d/yy",
    mediumDate:     "mmm d, yyyy",
    longDate:       "mmmm d, yyyy",
    fullDate:       "dddd, mmmm d, yyyy",
    shortTime:      "h:MM TT",
    mediumTime:     "h:MM:ss TT",
    longTime:       "h:MM:ss TT Z",
    isoDate:        "yyyy-mm-dd",
    isoTime:        "HH:MM:ss",
    isoDateTime:    "yyyy-mm-dd'T'HH:MM:ss",
    isoUtcDateTime: "UTC:yyyy-mm-dd'T'HH:MM:ss'Z'"
};

// Internationalization strings
dateFormat.i18n = {
    dayNames: [
        "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat",
        "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"
    ],
    monthNames: [
        "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec",
        "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"
    ]
};

// For convenience...
Date.prototype.format = function (mask, utc) {
    return dateFormat(this, mask, utc);
};

Chủ đề: JavaScript / JQueryPrev | Tiếp theoPrev|Next

Trả lời: Sử dụng phương pháp setDate()

Bạn có thể chỉ cần sử dụng phương thức setDate() để thêm số ngày vào ngày hiện tại bằng JavaScript. Cũng lưu ý rằng, nếu giá trị ngày nằm ngoài phạm vi giá trị ngày trong tháng, setDate() sẽ cập nhật đối tượng ngày phù hợp (ví dụ: nếu bạn đặt 32 cho tháng 8, nó sẽ trở thành ngày 01 tháng 9).

Hãy thử ví dụ sau để hiểu cách thức thực sự hoạt động:

// Get current date
var date = new Date();

// Add five days to current date
date.setDate(date.getDate() + 5);

console.log(date);

Tương tự, bạn cũng có thể thêm số ngày vào một ngày cụ thể trong JavaScript.

// Specific date
var date = new Date('August 21, 2021 16:45:30');

// Add ten days to specified date
date.setDate(date.getDate() + 10);

console.log(date);


Câu hỏi thường gặp liên quan

Dưới đây là một số Câu hỏi thường gặp liên quan đến chủ đề này:

  • Cách định dạng ngày JavaScript
  • Cách nhận ngày, tháng và năm từ một đối tượng ngày trong JavaScript
  • Cách phân tích cú pháp chuỗi vào đối tượng ngày trong JavaScript

Làm thế nào để bạn thêm ngày vào một ngày mới?

var hôm nay = ngày mới ();var ngày mai = ngày mới ();ngày mai.setDate (hôm nay.getdate ()+1);tomorrow. setDate(today. getDate()+1);

Làm thế nào có thể thêm 30 ngày vào ngày hiện tại trong jQuery?

Làm thế nào có thể thêm 30 ngày vào ngày hiện tại trong jQuery ?..
Chức năng bổ sung (Bản gốc, ngày) {.
Nhân bản = ngày mới (Bản gốc. ValueOf ()) ;.
nhân bản.setDate (nhân bản. getDate () + ngày) ;.
trả lại nhân bản ;.
Hãy hẹn = ngày mới ("ngày 12 tháng 2 năm 2021 00:00:00") ;.
Hãy để newAppointment = bổ sung (cuộc hẹn, 7) ;.

Làm thế nào để bạn thêm ngày trong ngày trong React JS?

Làm thế nào để bạn thêm ngày trong ngày trong React JS ?..
Đặt ngày = ngày mới () ;.
// Thêm một ngày ..
ngày.setDate (ngày. getDate () + 1) ;.

Làm thế nào để bạn thêm 1 ngày trong một khoảnh khắc?

Để thêm thời gian, hãy vượt qua khóa bạn muốn thêm thời gian và số tiền bạn muốn thêm.moment (). Thêm (7, 'ngày');Có một số chìa khóa tốc ký cũng như nếu bạn thích toàn bộ điều ngắn gọn đó.moment(). add(7, 'days'); There are some shorthand keys as well if you're into that whole brevity thing.