Contoh penulisan menggunakan objek perintah dan bukannya suis kemahiran statement_javascript

WBOY
Lepaskan: 2016-05-16 16:12:10
asal
1449 orang telah melayarinya

Ada yang pernah berkata bahawa program yang benar-benar bagus tidak mempunyai jika..lain. Penggunaan suis adalah dilarang dalam spesifikasi JS.

Objek arahan menyelesaikan masalah ini dengan sempurna.

Petikan daripada blog asing:

JavaScript mempunyai penyataan aliran kawalan yang baik, yang selalunya dibalut dengan pendakap kerinting. Terdapat satu pengecualian: suis … pernyataan kes. Perkara yang pelik tentang suis ... kes ialah anda mesti menambah kata kunci pemecahan pada akhir setiap kes untuk mengelakkan kawalan aliran daripada melepasi pernyataan kes seterusnya. Traversal merujuk kepada kaedah melaksanakan berbilang kes Apabila rehat yang dijangkakan tidak ditemui, kawalan diserahkan secara automatik kepada kes seterusnya. Walau bagaimanapun, sama seperti koma bertitik dan pendakap, anda mungkin secara tidak sengaja terlupa untuk menulis rehat Apabila ini berlaku, penyelesaian masalah kemudian akan menjadi lebih menyakitkan kerana pernyataan itu sendiri adalah betul. Oleh itu, adalah amalan yang baik untuk menulis kes ... pecah secara berpasangan.
Kami biasanya mengatakan bahawa JavaScript mempunyai literal objek yang elegan dan fungsi peringkat atas, yang menjadikan pertanyaan kaedah tertentu sangat mudah. Objek yang dicipta untuk pertanyaan kaedah dipanggil objek tindakan atau objek perintah, dan digunakan dalam banyak corak reka bentuk perisian, termasuk corak arahan yang berkuasa dan berguna.

Contoh:

Salin kod Kod adalah seperti berikut:

// tukar kaedah
Fungsi testSwitch(nama) {
suis (nama) {
kes '1':
                    kembalikan 'godam';
                 rehat;
kes '2':
                     kembalikan 'slash';
                 rehat;
kes '3':
                    kembali 'lari';
                 rehat;
                                   lalai:
                       pulangan palsu;
                 rehat;
}
}
//Gunakan objek arahan
Ujian fungsiFn(nama) {
      var names = {
              '1': function() {
                    kembalikan 'godam';
            },
              '2': function() {
                     kembalikan 'slash';
            },
              '3': function() {
                    kembali 'lari';
            }
        };
Jika (jenis nama[nama] !== 'fungsi') {
              pulangan palsu;
}
          kembalikan nama[nama]();
}
// Keputusan ujian
var result1 = testSwitch('1');
var result2 = testFn('2');
console.info(hasil1, hasil2);
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