Nhận ngày trong tuần từ ngày JavaScript

Sáng nay, một trong những sinh viên của tôi đã hỏi tôi làm cách nào để có được ngày cho lần xuất hiện tiếp theo của một ngày cụ thể trong tuần. Ví dụ. “Thứ Tư tới là thứ mấy?”

Đây là một người tốt. Nào cùng đào vào bên trong

Tiếp cận

Đối với cái này, chúng ta cần lấy ngày trong tuần cho ngày hôm nay, sau đó tính xem còn bao nhiêu ngày nữa là đến ngày chúng ta đang tìm kiếm.

Ví dụ: nếu hôm nay là Thứ Năm, thì Thứ Bảy còn hai ngày nữa

Khi chúng tôi biết điều đó, chúng tôi có thể nhận được dấu thời gian cho ngày hôm nay, thêm mili giây trị giá hai ngày vào đó () và nhận đối tượng ngày mới cho ngày chúng tôi muốn

var nextDay = new Date(todayTimestamp + (1000 * 60 * 60 * 24 * 2));

Tạo chức năng trợ giúp

Để bắt đầu, hãy tạo một hàm trợ giúp, getNextDay()

Nó chấp nhận một đối số.

var getNextDay = function (dayName) {
	// Codes goes here...
};
0. Đây là ngày cụ thể trong tuần mà bạn đang tìm kiếm

var getNextDay = function (dayName) {
	// Codes goes here...
};

Chúng tôi biết rằng chúng tôi sẽ cần ngày hôm nay, vì vậy hãy tiếp tục và đạt được điều đó

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();

};

Nhận ngày trong tuần

Đối tượng

var getNextDay = function (dayName) {
	// Codes goes here...
};
1 có phương thức
var getNextDay = function (dayName) {
	// Codes goes here...
};
2 trả về một số nguyên biểu thị ngày trong tuần

Nó bắt đầu với Chủ nhật, có giá trị là

var getNextDay = function (dayName) {
	// Codes goes here...
};
3. Thứ Hai có giá trị là
var getNextDay = function (dayName) {
	// Codes goes here...
};
4, Thứ Ba có giá trị là
var getNextDay = function (dayName) {
	// Codes goes here...
};
5, v.v.

Hãy lấy ngày cho ngày hiện tại của chúng ta

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();
	var now = date.getDay();

};

Chúng ta cũng cần lấy số nguyên này cho ngày trong tuần muốn. Chúng ta có thể tạo một mảng với các ngày trong tuần và sử dụng phương thức

var getNextDay = function (dayName) {
	// Codes goes here...
};
6 để tìm chỉ mục của ngày mong muốn

Để linh hoạt tối đa, hãy đặt các ngày trong tuần không phân biệt chữ hoa chữ thường

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();
	var now = date.getDay();

	// Days of the week
	var days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];

	// The index for the day you want
	var day = days.indexOf(dayName.toLowerCase());

};

Làm toán

Bây giờ chúng ta có các số nguyên cho ngày hiện tại trong tuần và ngày chúng ta muốn, chúng ta có thể thực hiện một số phép toán

Hãy trừ đi

var getNextDay = function (dayName) {
	// Codes goes here...
};
7 từ
var getNextDay = function (dayName) {
	// Codes goes here...
};
8 của chúng ta. Nếu hôm nay là thứ Năm, và chúng ta chuyển vào
var getNextDay = function (dayName) {
	// Codes goes here...
};
9 làm đối số
var getNextDay = function (dayName) {
	// Codes goes here...
};
0, điều này sẽ mang lại cho chúng ta giá trị là
var getNextDay = function (dayName) {
	// Codes goes here...
};
5

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();
	var now = date.getDay();

	// Days of the week
	var days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];

	// The index for the day you want
	var day = days.indexOf(dayName.toLowerCase());

	// Find the difference between the current day and the one you want
	var diff = day - now;

};

Nhưng điều gì sẽ xảy ra nếu, chẳng hạn, chúng ta đã chuyển vào một giá trị là

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();

};
2? . Nếu chúng ta sử dụng
var getNextDay = function (dayName) {

	// The current day
	var date = new Date();

};
4 thì sao?

Để khắc phục điều này, chúng tôi sẽ kiểm tra xem liệu

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();

};
6 có nhỏ hơn
var getNextDay = function (dayName) {
	// Codes goes here...
};
4 không. Nếu đúng như vậy, chúng tôi sẽ thêm
var getNextDay = function (dayName) {

	// The current day
	var date = new Date();

};
8 vào đó để “vòng quanh” đến đầu tuần (hoặc tuần tiếp theo)

Trong đoạn mã bên dưới, tôi đang sử dụng toán tử bậc ba cho việc này

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();
	var now = date.getDay();

	// Days of the week
	var days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];

	// The index for the day you want
	var day = days.indexOf(dayName.toLowerCase());

	// Find the difference between the current day and the one you want
	// If it's the same day as today (or a negative number), jump to the next week
	var diff = day - now;
	diff = diff < 1 ? 7 + diff : diff;

};

Nhận ngày tiếp theo

Bây giờ chúng ta biết ngày tiếp theo trong tuần của chúng ta là bao nhiêu ngày trong tương lai, chúng ta có thể lấy ngày thực tế

Chúng tôi sẽ sử dụng phương pháp

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();

};
9 để đánh dấu thời gian cho ngày hôm nay. Sau đó, chúng tôi sẽ nhân
var getNextDay = function (dayName) {

	// The current day
	var date = new Date();

};
6 của mình với giá trị mili giây của một ngày (
var getNextDay = function (dayName) {

	// The current day
	var date = new Date();
	var now = date.getDay();

};
1) và thêm nó vào dấu thời gian. Điều này cung cấp cho chúng tôi một dấu thời gian cho ngày chúng tôi muốn

Cuối cùng, chúng ta sẽ chuyển dấu thời gian mới này vào hàm tạo

var getNextDay = function (dayName) {

	// The current day
	var date = new Date();
	var now = date.getDay();

};
2 và trả về đối tượng ngày mới

Làm cách nào để lấy ngày trong tuần từ ngày JavaScript?

Phương thức getDay() trả về ngày trong tuần (0 đến 6) của một ngày.

Làm cách nào để lấy số ngày từ ngày trong JavaScript?

Phương thức getDate(). Phương thức getDate() trả về ngày của một ngày dưới dạng số (1-31). .
Phương thức getHours(). Phương thức getHours() trả về giờ của một ngày dưới dạng số (0-23). .
Phương thức getMinutes(). .
Phương thức getSeconds(). .
Phương thức getMilliseconds(). .
Phương thức getTime()

Làm cách nào để có được JavaScript ngày nay?

Trong JavaScript, chúng ta có thể dễ dàng lấy ngày hoặc giờ hiện tại bằng cách sử dụng đối tượng Date() mới .

Làm cách nào để lấy ngày trong tháng từ ngày trong JavaScript?

Sử dụng phương thức getUTCDate() . Hàm này trả về ngày của đối tượng ngày trong tháng, nằm trong khoảng từ 1 đến 31. Ngày theo UTC, được trả về bởi hàm getUTCDate().