Dapatkan bilangan hari dalam bulan tertentu
Saya percaya bahawa semasa anda di sekolah rendah, anda semua tahu berapa hari terdapat dalam setiap dua belas bulan dalam setahun Terdapat kewujudan istimewa di dalamnya - Februari. Februari dalam tahun lompat mempunyai 29 hari, manakala Februari dalam tahun lompat hanya mempunyai 28 hari. Dianggarkan ramai orang, seperti saya, telah melupakan peraturan tahun lompat Pada masa ini, kaedah berikut berguna.
tarikh var = Tarikh baharu(2013, 2, 0);
date.getDate(); // 28
tarikh = Tarikh baharu(2012, 2, 0);
date.getDate(); // 29
Apabila mencipta objek Tarikh, anda boleh lulus dalam tiga parameter, iaitu tahun, bulan (0~11, 0 bermaksud Januari), dan hari Jika parameter hari ialah 0, objek yang dibuat mewakili hari terakhir bulan sebelumnya. supaya anda boleh tahu berapa hari ada dalam bulan lepas.
Begitu juga, kita juga boleh menggunakan kaedah ini untuk menentukan sama ada tahun tertentu adalah tahun lompat:
fungsi ialahLeapYear(tahun) {
Kembalikan Tarikh baharu(tahun, 2, 0).getDate() === 29;
}
isLeapYear(2012); // benar
Dapatkan zon waktu
Kaedah jenis tarikh getTimezoneOffset() boleh mendapatkan perbezaan masa antara waktu Greenwich dan waktu tempatan, dalam beberapa minit. Contohnya:
var date = new Date();
var timezoneOffset = date.getTimezoneOffset(); // China (Daerah Kelapan Timur) ialah -480
-timezoneOffset / 60; // 8
Bahagikan perbezaan masa yang diperolehi dengan 60, dan kemudian ambil nilai negatif untuk mendapatkan zon waktu.
Selain ini, ada cara lain. Selepas memanggil toString() jenis tarikh, anda boleh mendapatkan rentetan tarikh dalam format tetap:
new Date().toString(); // Ahad 10 Mac 2013 16:41:12 GMT 0800 (Masa Standard China)
Jelas sekali, 800 selepas GMT ialah zon waktu yang kita inginkan. Kita boleh mendapatkan nilai dengan memadankannya dengan ungkapan biasa.
/GMT([ -]d )/.test( new Date().toString() );
var zon waktu = RegExp.$1; // 0800
Walau bagaimanapun, pembolehubah zon waktu pada masa ini ialah rentetan Jika ia hendak ditukar kepada jenis angka, beberapa pemprosesan perlu dilakukan.
Kira masa berjalan
Bagaimana untuk mengukur masa pelaksanaan program tertentu? Kaedahnya sangat mudah. Catat masa sebelum pelaksanaan Selepas pelaksanaan, tolak masa sebelum pelaksanaan daripada masa semasa untuk mendapatkan keputusan:
var startTime = new Date();
// beberapa program
console.log(Tarikh() baharu - Masa mula);
Tidak perlu menukar tarikh secara manual kepada nombor di sini, kerana operasi penolakan secara semula jadi akan memaksa penukaran. Hasil yang dikira dengan cara ini adalah pada tahap milisaat, yang tidak begitu tepat Namun, untuk Javascript sisi penyemak imbas, tidak perlu risau tentang penggunaan dalam masa 1 milisaat.
Padam kuki
Setepatnya, kami tidak boleh memadamkan kuki secara langsung melalui Javascript. Satu-satunya cara untuk memadamkan kuki daripada dunia adalah dengan membiarkannya tamat tempoh, supaya mekanisme terbina dalam penyemak imbas akan mematikannya secara automatik.
Cara paling mudah untuk membuat kuki tamat tempoh adalah dengan menetapkan masa tamat tempohnya kepada nilai minimum. Tarikh terkecil yang boleh dinyatakan dalam Javascript ialah 0:00:00 pada 1 Januari 1970. Anda boleh mencipta objek tarikh sedemikian melalui Date(0):
baharu
var cookieName = 'name'; // nama cookie
document.cookie = cookieName '=' '; expires=' new Date(0).toUTCString();