Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mendapatkan Nombor Minggu ISO-8601 dalam JavaScript?

Bagaimana untuk Mendapatkan Nombor Minggu ISO-8601 dalam JavaScript?

Barbara Streisand
Lepaskan: 2024-12-06 08:20:13
asal
915 orang telah melayarinya

How to Get the ISO-8601 Week Number in JavaScript?

Cara Mendapatkan Nombor Minggu ISO-8601 dalam JavaScript

Untuk menentukan nombor minggu ISO-8601 tahun itu, sama dengan PHP date('W'), pertimbangkan pendekatan berikut:

Rujuk sumber di Merlyn's tapak web:

  • [Bekerja dengan Minggu](https://www.merlyn.org/js-date6.htm#YWD)

Kod JavaScript ini menunjukkan konsep:

/*
 * Calculates the ISO week number for a given date.
 *
 * Algorithm adopted from:
 * https://www.merlyn.org/weekcalc.htm#WNR
 *
 * Input:
 *   d: Date object representing the date to calculate the week number for.
 *
 * Output:
 *   Array containing the year and week number.
 */
function getWeekNumber(d) {
    // Clone the date to avoid modifying the original.
    d = new Date(d.getTime());

    // Set the date to the nearest Thursday by adding 4 days and subtracting the day of the week.
    d.setDate(d.getDate() + 4 - (d.getDay() || 7));

    // Determine the first day of the year.
    const yearStart = new Date(d.getFullYear(), 0, 1);

    // Calculate the number of full weeks between the current date and the first day of the year.
    const weekNo = Math.ceil(((d - yearStart) / 86400000 + 1) / 7);

    // Return the year and week number in an array.
    return [d.getFullYear(), weekNo];
}

// Example:
const result = getWeekNumber(new Date());
console.log(`Current week: ${result[1]} of year ${result[0]}`);
Salin selepas log masuk

Menggunakan kod ini, anda boleh mendapatkan nombor minggu ISO-8601 semasa tahun, yang merangkumi minggu bermula pada hari Isnin, serupa dengan fungsi yang disediakan oleh tarikh PHP('W').

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nombor Minggu ISO-8601 dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan