Panduan untuk menggunakan kaedah getDay objek Tarikh dalam kemahiran javascript_javascript

WBOY
Lepaskan: 2016-05-16 16:25:26
asal
2053 orang telah melayarinya

Objek Tarikh mempunyai kaedah getDay, yang mengembalikan hari dalam seminggu dalam tarikh tertentu berdasarkan waktu tempatan. Nilai pulangan adalah antara 0 hingga 6, sepadan dengan Ahad hingga Sabtu masing-masing

dapatkanHari 0 1 2 3 4 5 6
Hari minggu Ahad Isnin Selasa Rabu Khamis Jumaat Sabtu

Apabila menggunakan keperluan berkaitan tarikh, anda perlu menukar nilai yang dikembalikan oleh getDay kepada hari dalam seminggu, iaitu, apakah hari dalam minggu itu "hari ini"? Sebagai contoh, memilih kalendar dalam komponen kalendar mengembalikan "2014-12-22 Isnin".

Ini ialah sekeping kod yang masih berjalan dalam talian

Salin kod Kod adalah seperti berikut:

/*
* Kembalikan hari dalam seminggu berdasarkan objek Tarikh
* @param {Tarikh} tarikh
* @return {String} "Rabu"
*/
fungsi getChineseWeekByDate(tarikh) {
var numWeekDay = date.getDay();
Jika (numWeekDay == 0) {
         kembali 'Ahad';
} lain jika (numWeekDay == 1) {
         kembali 'Isnin';
} lain jika (numWeekDay == 2) {
         kembali 'Selasa';
} lain jika (numWeekDay == 3) {
         kembali 'Rabu';
} lain jika (numWeekDay == 4) {
         kembali 'Khamis';
} else if (numWeekDay == 5) {
         kembali 'Jumaat';
} lain jika (numWeekDay == 6) {
         kembali 'Sabtu';
} lain {
         kembali '';
}
}

Kod ini dinilai dengan berbilang cawangan if else dan mengembalikan hari dalam seminggu Beberapa pelajar menyebut bahawa ia boleh dioptimumkan menggunakan suis

Salin kod Kod adalah seperti berikut:

/*
* Kembalikan hari dalam seminggu berdasarkan objek Tarikh
* @param {Tarikh} tarikh
* @return {String} "Rabu"
*/
fungsi getChineseWeekByDate(tarikh) {
var numWeekDay = date.getDay();
suis (numWeekDay) {
kes 0: kembali 'Ahad';
          kes 1: pulangkan 'Isnin';
         kes 2: kembalikan 'Selasa';
          kes 3: kembalikan 'Rabu';
kes 4: pulangkan 'Khamis';
kes 5: kembali 'Jumaat';
kes 6: pulangkan 'Sabtu';
            lalai: return '';
}
}

Berbanding dengan if/else, kodnya jauh lebih ringkas, lebih pendek dan lebih jelas. Seseorang telah membuat statistik bahawa lebih pendek kod, lebih pendek masa berfikir otak. Oleh itu, anda akan melihat pelbagai orang dan buku menyokong dan memuji "kod pendek" seperti "Keindahan Kod Pendek" dan "Cara Menyingkat Kod".

"Ensiklopedia Kod" disebut menggunakan kaedah dipacu jadual untuk memudahkan pengaturcaraan

Kaedah dipacu jadual — Kaedah dipacu jadual ialah corak pengaturcaraan (skim) yang mencari maklumat daripada jadual tanpa menggunakan pernyataan logik (jika dan suis). Malah, apa sahaja yang boleh dipilih melalui pernyataan logik boleh dipilih melalui carian jadual. Untuk kes mudah, lebih mudah dan lebih mudah untuk menggunakan pernyataan logik. Tetapi apabila rantaian logik menjadi lebih dan lebih kompleks, kaedah jadual carian menjadi lebih dan lebih menarik.

Seperti yang dinyatakan di atas, jadual digunakan untuk menggantikan pernyataan logik Ramai jurutera hadapan dalam JS telah mencuba yang terbaik untuk menghapuskan pernyataan dengan ungkapan kerana mereka memahami beberapa ciri bahasa berfungsi. Contohnya

1. && menggantikan single jika

Salin kod Kod adalah seperti berikut:

jika (a == 1) {
$.ajax(xx)
}
// -->
(a == 1) && $.ajax(xx)

2 ?: gantikan jika/lain

Salin kod Kod adalah seperti berikut:

jika (a == 1) {
$.ajax(xx)
} lain {
$(yy).buang()
}
// -->
(a == 1) ? $.ajax(xx) : $(yy).remove()

3. Berbilang if/else dan suis juga boleh digantikan dengan berbilang "?:"

Salin kod Kod adalah seperti berikut:

jika (a == 1) {
makluman(1)
} lain jika (a == 2) {
makluman(2)
} lain jika (a == 3) {
makluman(3)
} lain {
makluman(4)
}
// -->
(a == 1)
? makluman(1) : (a == 2)
? makluman(2) : (a == 3)
? alert(3) : alert(4)

Selain itu, anda juga boleh menggunakan rekursi fungsi untuk menghapuskan kenyataan for/while. Saya ketagih dengan kaedah penulisan ini pada mulanya, tetapi kemudian saya mendapati bahawa saya tidak dapat memahaminya lagi (mungkin saya masih kurang membacanya, otak sentiasa menukarnya secara semula jadi kepada ayat), tetapi akhirnya saya terbiasa menggunakan ayat .

Mari cuba gantikan jadual yang disebut dalam "Ensiklopedia Kod" dengan objek JS

Salin kod Kod adalah seperti berikut:

/*
* Kembalikan hari dalam seminggu berdasarkan objek Tarikh
* @param {Tarikh} tarikh
* @return {String} "Rabu"
*/
fungsi getChineseWeekByDate(tarikh) {
var numWeekDay = date.getDay();
var weekObj = {
         '0': 'Ahad',
'1': 'Isnin',
'2': 'Selasa',
'3': 'Rabu',
'4': 'Khamis',
‘5’: ‘Jumaat’,
'6': 'Sabtu',
};
Kembali mingguObj[numWeekDay] || }

Berbanding dengan suis, banyak kod telah dikurangkan, tetapi masih terdapat kekunci 0~6. Nilai yang dikembalikan oleh kaedah getDay bermula dari 0 sama seperti indeks tatasusunan JS. Oleh itu, ia boleh dipermudahkan menggunakan tatasusunan

Salin kod Kod adalah seperti berikut:
/*
* Kembalikan hari dalam seminggu berdasarkan objek Tarikh
* @param {Tarikh} tarikh
* @return {String} "Rabu"
*/
fungsi getChineseWeekByDate(tarikh) {
var numWeekDay = date.getDay();
var weekArr = ['Ahad', 'Isnin', 'Selasa', 'Rabu', 'Khamis', 'Jumaat', 'Sabtu'];
Kembali mingguArr[numWeekDay] || }


Label berkaitan:
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan