Saya mengajukan pertanyaan kemarin Haruskah saya repot-repot Mengembangkan Untuk JavaScript Dinonaktifkan? . Saya pikir konsekuensinya adalah: Ya, saya harus mengembangkan untuk JavaScript Disabled. Sekarang saya hanya ingin mengerti mengapa pengguna menonaktifkan JS. Tampaknya banyak pengembang (saya kira orang-orang yang menjawab pertanyaan adalah pengembang) menonaktifkan JS. Mengapa demikian. Mengapa pengguna menonaktifkan JS? Untuk keamanan? Kecepatan? atau apa?
web-development
javascript
Jiew Meng
sumber
sumber
Jawaban:
Seseorang menonaktifkan JavaScript di lingkungan browser karena pertimbangan berikut:
Kecepatan & Bandwidth
Banyak aplikasi menggunakan terlalu banyak JavaScript untuk kebaikannya sendiri ... Apakah Anda memerlukan bagian antarmuka Anda untuk disegarkan oleh panggilan AJAX sepanjang waktu? Mungkin antarmuka Anda terasa hebat dan cepat ketika digunakan dengan koneksi broadband, tetapi ketika Anda harus menurunkan kecepatan koneksi menjadi lebih lambat, antarmuka yang lebih ramping lebih disukai. Dan mematikan JavaScript adalah cara yang baik untuk mencegah aplikasi web yang bodoh untuk menyegarkan dunia setiap 15 detik atau lebih tanpa alasan yang jelas. (Pernah melihat jumlah data yang dikirim melalui Facebook? Menakutkan. Ini bukan hanya masalah terkait JS, tetapi juga bagian dari itu).
Kami juga cenderung lebih banyak memuat dari pemrosesan ke klien, dan jika Anda menggunakan perangkat keras minimalis (atau hanya ketinggalan jaman), ini sangat lambat.
Kegunaan & Aksesibilitas
Tidak semua antarmuka pengguna harus diekspresikan secara dinamis, dan konten yang dihasilkan server mungkin bisa diterima dalam banyak kasus. Plus, beberapa orang tidak menginginkan antarmuka seperti ini. Anda tidak dapat menyenangkan semua orang, tetapi kadang-kadang Anda memiliki kesempatan untuk dan kewajiban untuk memuaskan semua pengguna Anda.
Akhirnya, beberapa pengguna memiliki cacat, dan jangan abaikan mereka !!!
Skenario terburuk di sini, menurut pendapat saya, adalah situs web pemerintah yang mencoba "memodernisasi" UI mereka agar tampak lebih ramah kepada publik, tetapi akhirnya meninggalkan sebagian besar audiens yang dituju. Demikian pula, sangat disayangkan ketika seorang mahasiswa tidak dapat mengakses konten programnya: karena dia buta dan pembaca layarnya tidak mendukung situs tersebut, atau karena situs tersebut sangat berat dan memerlukan plug-in modern ad-hoc yang dia tidak bisa menginstal pada laptop yang diperbaharui yang dibeli di e-bay 2 tahun yang lalu, atau lagi karena dia kembali ke rumah ke negara lain untuk liburan musim semi dan kendala bandwidth lokal tidak dapat mengatasi payload dari situs
Tidak semua orang hidup di dunia yang sempurna.
Dukungan Platform
Poin ini berkaitan dengan 2 yang sebelumnya dan cenderung kurang relevan saat ini, karena browser menanamkan mesin JavaScript yang tingkat besarnya lebih efisien daripada sebelumnya, dan ini terus menjadi lebih baik.
Namun, tidak ada jaminan bahwa semua pengguna Anda memiliki hak istimewa untuk menggunakan browser modern (baik karena kendala korporat - yang memaksa kami untuk mendukung browser kuno tanpa alasan yang baik, benar-benar - atau alasan lain yang mungkin atau mungkin tidak valid). Seperti yang disebutkan oleh "Matthieu M." dalam komentar, Anda harus ingat bahwa banyak orang masih menggunakan perangkat keras berkualitas rendah, dan tidak semua orang menggunakan smartphone terbaru dan paling keren. Sampai hari ini, masih ada sebagian besar orang yang menggunakan ponsel yang telah menyematkan browser dengan dukungan terbatas.
Tapi, seperti yang saya sebutkan, segalanya menjadi lebih baik di daerah ini. Tetapi Anda masih harus mengingat poin sebelumnya tentang batasan bandwidth jika Anda tetap melakukan polling secara teratur (atau pengguna Anda akan menikmati tagihan telepon yang bagus).
Itu semua sangat saling terkait.
Keamanan
Meskipun jelas Anda bisa berpikir bahwa tidak ada hal yang berbahaya yang dapat dilakukan dengan JavaScript mengingat itu berjalan di lingkungan browser, ini sama sekali tidak benar.
Anda benar-benar menyadari bahwa ketika Anda mengunjungi P.SE dan SO, Anda secara otomatis masuk jika Anda masuk ke jaringan lain, kan? Ada beberapa JS di sana. Bit itu masih tidak berbahaya, tetapi menggunakan beberapa konsep yang dapat dieksploitasi oleh beberapa situs jahat. Sangat mungkin bagi sebuah situs web untuk menggunakan JavaScript untuk mengumpulkan informasi tentang beberapa hal yang Anda lakukan (atau lakukan) selama sesi penelusuran Anda (atau yang sebelumnya jika Anda tidak menghapus data sesi Anda setiap kali Anda keluar dari browser atau menjalankan yang sekarang mode penyamaran umum / penjelajahan pribadi secara ekstensif) dan kemudian cukup unggah ke server.
Kerentanan terkini (bekerja di browser utama pada saat itu) termasuk kemampuan untuk mengumpulkan data formulir input yang disimpan (dengan mencoba kombinasi untuk Anda di halaman jahat dan merekam teks yang disarankan untuk setiap kombinasi huruf awal yang memungkinkan, mungkin memberi tahu penyerang siapa Anda , tempat Anda bekerja dan tinggal ) atau untuk mengekstrak riwayat dan kebiasaan penelusuran Anda ( Peretasan yang sangat cerdik melakukan sesuatu yang sederhana seperti menyuntikkan tautan ke DOM laman untuk mencocokkan warna tautan dan melihat apakah telah dikunjungi . Anda hanya perlu melakukan ini pada tabel yang cukup besar dari nama domain yang dikenal. Dan browser Anda semakin cepat dalam memproses JavaScript, hal semacam ini dilakukan dengan cepat.)
Plus, jangan lupa bahwa jika model keamanan browser Anda cacat, atau situs web yang Anda kunjungi tidak cukup melindungi diri dari serangan XSS, maka orang mungkin menggunakan JavaScript untuk cukup memanfaatkan sesi terbuka Anda di situs web jarak jauh.
JavaScript sebagian besar tidak berbahaya ... jika Anda menggunakannya untuk situs web tepercaya. Gmail Facebook (mungkin ... dan bahkan tidak ...). Pembaca Google. StackExchange.
Tapi ya tentu, JavaScript tidak seburuk itu, kan? Dan ada hal-hal menakutkan yang ditakuti online. Seperti berpikir Anda anonim ketika Anda benar-benar tidak banyak , seperti yang ditunjukkan oleh percobaan Panopticlick dari EFF . Yang juga sebagian dilakukan dengan menggunakan JavaScript. Anda bahkan dapat membaca alasan mereka menonaktifkan JavaScript untuk menghindari sidik jari peramban .
Semua ini dikatakan, mungkin ada situasi yang sangat baik di mana Anda tidak perlu repot-repot mendukung JavaScript. Tetapi jika Anda menawarkan situs web layanan publik, pertimbangkan untuk menerima kedua jenis klien. Secara pribadi, saya pikir banyak aplikasi web dan situs web modern akan berfungsi sama baiknya dengan menggunakan model konten yang dihasilkan server tanpa JavaScript sama sekali di sisi klien, dan itu akan tetap bagus dan mungkin jauh lebih sedikit memakan.
Jarak tempuh Anda dapat bervariasi tergantung pada proyek Anda.
sumber
Karena memercayai seseorang untuk menulis komik lucu setiap pagi dan memercayai seseorang untuk menjalankan kode lengkap Turing di komputer saya adalah dua hal yang sangat berbeda.
sumber
Saya bukan pengembang web, dan saya hanya memiliki pemahaman moderat tentang cara kerja internet. Jadi ini adalah jawaban dari pengguna .
Pengalaman saya membuat saya percaya bahwa banyak situs memiliki kode yang buruk, entah karena malas atau tidak tahu: Ketika saya melihat halaman web yang pada dasarnya statis , seperti halaman Facebook, penggunaan CPU saya akan meningkat sekitar 15%, dan lebih drastis. dengan banyak tab. Akhirnya sampai pada titik di mana saya harus menunggu jawaban setelah mengklik tombol atau tautan dan CPU saya akan terlalu panas dan terkunci.
Pada banyak pelaku (situs) terburuk ini, tidak ada yang terlihat yang berubah dan tidak ada yang interaktif yang terjadi. Saya hanya bisa mengira kode situs terus-menerus membuat penyegaran, jajak pendapat, dan loop yang tak ada habisnya.
Ini mendorong saya untuk menginstal NoScript untuk membebaskan penggunaan CPU saya dan berhenti menjelajah dari tugas yang membuat frustrasi.
Add-on indah lainnya yang saya gunakan adalah FlashBlock .
sumber
Saya menonaktifkan JS karena alasan kecepatan. TechCrunch tanpa JavaScript membutuhkan beberapa detik untuk memuat dengan cache yang sudah disiapkan. Dengan JavaScript dibutuhkan hampir 20 detik, lebih banyak jika cache tidak dipersiapkan.
Banyak situs telah membengkak dengan JavaScript, terutama galeri gambar dan situs perdagangan. Menghapus ini memberi Anda pengalaman menjelajah yang lebih baik dalam banyak kasus.
sumber
Bagi saya itu semua tentang keamanan. Saya menggunakan noscript untuk memungkinkan situs web tertentu untuk menjalankan javascript, sementara melarang sebagian besar.
Pada akhirnya Anda benar-benar tidak pernah tahu di mana bahaya itu berada ( situs web nobel terinfeksi di techspot.com ). Banyak eksploitasi nol hari (dan lainnya) menggunakan javascipt; menutup jalan serangan ini terasa seperti langkah ke arah yang benar.
sumber
Alasan utama saya adalah bahwa ia menekan iklan yang paling menjengkelkan. Saya lebih suka tidak menggunakan AdBlock Plus, karena itu dapat mempengaruhi pendapatan untuk situs yang saya kunjungi (dan saya telah menggunakan satu atau dua situs di mana ketentuan layanan mengatakan saya tidak menonaktifkan iklan). NoScript membatasi kemungkinan penyangkalan iklan, dan saya bersedia hidup bersama yang lainnya.
Ada juga pertimbangan keamanan, dan itu sebagian besar terkait dengan iklan juga, karena setiap situs yang menjual iklan harus dianggap berpotensi bermusuhan.
Selain itu, saya tidak perlu tahu situs itu cerdik sebelum saya mengunjunginya. Beberapa orang senang mengirimkan tautan ke situs, dan tidak selalu jujur.
sumber
Karena browser dulu memiliki implementasi JavaScript yang lambat dan terlalu banyak perancang web n00b hanya menggunakannya untuk hal-hal yang tidak relevan seperti rollover tombol.
Pada mesin yang cepat, dengan peramban modern, tidak ada orang waras yang menonaktifkannya sepanjang waktu. Yang tidak berarti tidak ada banyak orang yang sangat "sadar keamanan" dan orang lain tanpa dana, keinginan, atau pengetahuan untuk menjalankan browser modern di komputer yang cepat ... Hanya baru-baru ini IE6 berhenti menjadi browser paling populer di internet!
sumber
Dengan Javascript diaktifkan, situs web apa pun dapat menjalankan kode di Komputer saya. Saya bahkan tidak tahu, apakah situs web tersebut mengeksekusi kode dan apa fungsinya. Lebih parah lagi, orang lain dapat memasukkan kode tanpa sepengetahuan saya ke situs web yang biasanya tidak berbahaya (XSS). Baru-baru ini seorang komputer-magazin terkenal dari Jerman tidak membuat artikel, ketika seorang anak berusia 16 tahun mencoba situs perbankan online dari bank-bank paling umum di Jerman. Banyak dari mereka - termasuk yang terbesar - rentan terhadap XSS. Dan Anda bahkan tidak melihat, bahwa situs perbankan online Anda mengeksekusi beberapa Javascript yang berubah, misalnya target dan jumlah untuk transaksi. Dengan menonaktifkan Javascript serangan-XSS dalam konteks situs tepercaya tidak berguna, saya tidak menjalankan kode berbahaya.
sumber