lama
menulis halamantentang kekurangan JavaScript
. Hal yang paling mengganggu dalam pengembangan adalah kode Javascript.Jadi hari ini saya akan berbicara tentang kekurangan Javascript.
Mari kita bahas beberapa masalah mendasar terlebih dahulu.
1: Kompatibilitas rendah
. Ada banyak browser di WWW, seperti Netscape Navigator, Moses dan HotJava, dll., tetapi setiap browser mendukung JavaScript pada tingkat yang berbeda. Browser yang mendukung JavaScript dan yang tidak sepenuhnya mendukung JavaScript perlu menjelajah browser dengan Saat menggunakan skrip JavaScript di halaman beranda, akan ada celah efek tertentu, dan terkadang bahkan tidak ditampilkan.
Akibatnya, pengembang JavaScript sering kali perlu mengembangkan versi berbeda untuk browser berbeda. Beban kerja hampir meningkat, dan pada dasarnya semua pekerjaan berulang. Inilah yang tidak ingin kami lihat
2: Menyebabkan kebocoran memori
JavaScript adalah bahasa manajemen memori. Artinya, JavaScript memiliki kemampuan pengumpulan paket bawaan, sehingga dapat mengekstrak variabel yang tidak lagi digunakan oleh jalur referensi dan mengalokasikan kembali memori yang digunakan oleh variabel tersebut.
Ini bagus sebagai prinsip kerja dasar, namun karena referensi melingkar ini ketika objek model dan elemen tampilan saling mereferensikan, Anda tidak dapat mengandalkan fitur ini untuk mengoptimalkan penggunaan memori Anda. Pada prinsipnya, jika objeknya nol, maka elemennya juga nol, tetapi jika ada referensi mundur dari elemen ke objek, maka pengumpul paket tidak akan menyentuh objek tersebut.
Sekarang, masalah muncul: dalam model objek file, setiap node DOM di pohon file dapat direferensikan oleh elemen lain di pohon, terlepas dari apakah node tersebut direferensikan oleh objek lain! Oleh karena itu, setiap objek yang ditandai dalam pengumpul paket yang direferensikan mundur oleh node DOM harus kosong ke arah ini, jika tidak, memorinya akan tetap dalam keadaan dialokasikan. Faktanya, programmer sering mengabaikan hal ini. Inilah sebabnya mengapa memori banyak game web berskala besar meningkat pesat setelah dibuka.
3: Tidak ada dukungan untuk media streaming
. Anda hanya dapat menggunakan metode menyematkan pemain lain.
Tujuan desain asli Javascript adalah untuk "membuat halaman web bergerak". Hal ini telah tercapai dan terdapat beberapa terobosan. Namun, "bergerak" hanyalah "bergerak", itu saja tidak cukup. Ketika Javascript menghadapi Aplikasi Kaya, itu agak tidak berdaya.
Nah, jika Anda ingin membahas perkembangan javascript, sebaiknya Anda tidak terbatas pada Javascript saja, tetapi harus mempertimbangkan HTML (DHTML), DOM, Javascript, dan CSS secara bersama-sama. Pikirkanlah dari sudut pandang aplikasi browser (maafkan saya karena menciptakan kata "aplikasi browser").