Javascript memiliki reputasi buruk di internet, tetapi sulit bagi Anda untuk menemukan bahasa lain seperti itu sangat dinamis, begitu banyak digunakan, begitu berakar dalam kehidupan kita. Ambang belajarnya yang rendah telah membuat banyak orang menyebutnya bahasa skrip prasekolah. Hal lain yang membuat orang menertawakan adalah konsep bahasa dinamis yang menggunakan standar tinggi tipe data statis. Sebenarnya, Anda dan JavaScript telah mengambil posisi yang salah, dan sekarang Anda membuat JavaScript sangat marah. Berikut adalah lima alasan mengapa teknologi JavaScript Anda mengerikan.
1. Anda tidak menggunakan namespace.
Apakah Anda masih ingat bahwa di perguruan tinggi guru mengatakan kepada Anda untuk tidak menggunakan variabel global dalam pekerjaan rumah Anda? Penggunaan variabel global dalam JavaScript tidak terkecuali. Jika Anda tidak berhati -hati, Anda akan menjadi kacau dan ada skrip berantakan dan perpustakaan skrip yang ditemukan dari setiap sudut internet. Jika Anda menyebutkan variabel loader (), maka Anda sengaja menyebabkan masalah. Jika Anda membebani fungsi secara tidak sadar, JavaScript tidak akan mengingatkan Anda sama sekali. Anda juga menyebutnya bahasa pemrograman prasekolah, ingat? Apa yang akan saya katakan adalah bahwa Anda perlu tahu apa yang terjadi setelah melakukan ini.
Salinan kode adalah sebagai berikut:
fungsi derp () {alert ("One"); }
fungsi derp () {alert ("dua"); }
derp ();
"Dua", jawabannya adalah "dua". Tidak selalu terjadi, itu bisa menjadi "satu". Jadi, mudah untuk menempatkan semua kode Anda di namespace Anda sendiri. Berikut adalah cara sederhana untuk mendefinisikan namespace Anda sendiri.
Salinan kode adalah sebagai berikut:
var foospace = {};
foospace.derp = function () {alert ("One"); }
fungsi derp () {alert ("dua"); }
foospace.derp ();
2. Anda membuat trik, Anda mendefinisikan variabel satu per satu.
Penggunaan kombinasi angka yang tidak dapat dijelaskan karena nama variabel adalah akhir kalah-kalah. Mencari variabel karakter tanpa makna apa pun di blok kode 40 baris adalah mimpi buruk untuk pemeliharaan. Mencampur deklarasi pertama variabel ke dalam blok kode 40 baris juga merupakan mimpi buruk. Bahkan ketika Anda menemukan sendiri variabel seperti itu, Anda tidak dapat membantu tetapi bertanya pada diri sendiri: "Di mana ini ditentukan?", Dan kemudian dengan cepat menggunakan kombinasi Ctrl+F untuk menemukan definisi awal variabel ini dalam kode sumber. Tidak, jangan lakukan ini, sebaliknya, ini merupakan penyalahgunaan JavaScript dan pendekatan bodoh. Anda harus selalu mendefinisikan variabel di bagian atas ruang lingkup penggunaannya. Tidak dapat dikatakan bahwa karena ini tidak perlu, Anda tidak dapat melakukannya.
Salinan kode adalah sebagai berikut:
fungsi(){
var a, // deskripsi
B; //keterangan
//proses…
}
3. Anda tidak memahami ruang lingkup variabel JavaScript.
Anda adalah seorang programmer jenius, Anda makan C ++ dan daftar tarik. Anda tahu apa rentang variabel, Anda memiliki kendali penuh atas variabel Anda, dan Anda mengawasinya seperti kaisar tertinggi. Namun, JavaScript menarik kotoran di kopi Anda dan tertawa tanpa henti.
Salinan kode adalah sebagai berikut:
var herp = "satu";
{
var herp = "dua";
}
waspada (herp);
Dalam hal ini Anda mendapatkan herp bukan "satu", tetapi "dua". Variabel JavaScript rentang valid tidak tergantung pada blok kode seperti bahasa lain. Rentang variabel JavaScript didasarkan pada fungsi. Setiap fungsi memiliki rentang variabel sendiri, dan JavaScript keren dengan cara ini, mengabaikan ruang lingkup yang dibungkus dengan kawat gigi yang tidak berarti. Bahkan, JavaScript sangat keren sehingga Anda bahkan dapat melewati lingkup variabel seperti namespaces atau variabel.
4. Anda berpikir bahwa fitur JavaScript yang berorientasi objek baru saja dicangkokkan.
Javascript, sejak awal, telah menjadi bahasa yang berorientasi objek. Semuanya adalah objek dalam JavaScript, semuanya! Bahkan simbol literal seperti angka dan karakter dapat dikonversi menjadi objek melalui konstruktor yang melekat sendiri. Dibandingkan dengan bahasa yang berorientasi objek lainnya, JavaScript berbeda karena tidak memiliki kelas. Objek JavaScript didefinisikan seperti fungsi, dan bahkan fungsi itu sendiri adalah objek. Javascript memiliki properti yang disebut prototipe. Properti ini dibangun di semua objek. Anda dapat mengubah konstruksi objek, memodifikasi objek, menambahkan lebih banyak variabel, dan lebih banyak fungsi.
Salinan kode adalah sebagai berikut:
var derp; // akan memegang instance herp
var herp = function () {
this.opinion = ”javascript lebih keren dari dasar.”;
}
Herp.prototype.speak = function () {alert (this.opinion); }
var derp = herp baru ();
derp.speak ();
Jika ini tampaknya tidak ada hubungannya dengan Anda, saya ingin memperkenalkan teman baik saya Google kepada Anda, yang pandai membantu orang belajar pengetahuan. Berorientasi objek adalah topik besar untuk artikel pendek saya yang pendek.
5. Saat Anda menggunakan kata kunci "baru", itu seperti orang buta dan kuda buta.
JavaScript harus menjadi pacar cinta pertama Anda karena Anda merasa bingung. Jika Anda ingin tolong javascript seperti orang sungguhan, Anda perlu memahami simbol objek. Anda pada dasarnya tidak perlu menggunakan kata kunci baru kecuali ketika Anda perlu membuat instansi suatu objek, atau dalam kasus yang jarang terjadi di mana data dimuat dengan cara yang tertunda. Menetapkan sejumlah besar alamat variabel baru dalam JavaScript adalah operasi yang sangat lambat, dan untuk alasan efisiensi, Anda harus selalu menggunakan simbol objek.
Salinan kode adalah sebagai berikut:
var rightway = [1, 2, 3];
var Wrongway = Array baru (1, 2, 3);
Apakah Anda ingat bahwa saya mengatakan bahwa rentang variabel JavaScript didasarkan pada fungsi? Apakah Anda ingat seseorang yang mengatakan bahwa objek JavaScript didefinisikan seperti fungsi? Jika Anda tidak menggunakan kata kunci baru untuk mendeklarasikan objek, Anda akan menjadikan objek ini ruang lingkup global. Oleh karena itu, adalah kebiasaan yang baik untuk selalu menggunakan kata kunci baru untuk mendeklarasikan objek.
Salinan kode adalah sebagai berikut:
var derp = "One";
var herp = function () {
this.derp = "dua";
}
var foo = herp ();
peringatan (derp);
Jika Anda menulis dengan cara ini, JavaScript tidak akan peduli, dan jawaban yang benar -benar muncul adalah "dua"! Ada banyak cara untuk mencegah objek melakukan perilaku seperti itu, yang dapat digunakan untuk menggunakan instanceof, tetapi cara yang lebih baik adalah dengan menggunakan kata kunci baru dengan benar, yang membuatnya lebih profesional.
Sekarang Anda tahu bahwa kode JavaScript Anda mengerikan, dan jika Anda ingat apa yang dikatakan di atas, kode Anda akan meningkat. Saya suka menggunakan 3 tombol tab untuk mengindir kode, saya suka menggunakan garis bawah untuk menghubungkan kata -kata, saya suka memanfaatkan huruf awal fungsi untuk menunjukkan bahwa itu adalah objek. Tentu saja, ini adalah diskusi lain. Ada banyak alasan mengapa kode JavaScript Anda buruk, sama seperti saya memiliki banyak keterampilan, jadi saya dapat mengungkapkan pendapat, dukungan, keberatan, dan memberi saya beberapa saran dalam komentar.
Terima kasih banyak kepada Rogeliorv dan Jared Wein karena menunjukkan kesalahan pada poin 5. Anda sangat kuat.