Javascriptoo Merupakan Situs Yang memberikan Informasi Tentang Komputer dan Java Scrypt

Inilah yang Anda Butuhkan Untuk Mempelajari JavaScript Secara Mendalam

Inilah yang Anda Butuhkan Untuk Mempelajari JavaScript Secara Mendalam – Jika Anda bertanya kepada pengembang di awal 2000-an apa bahasa pemrograman paling penting untuk pengembangan web, hal terakhir yang akan mereka katakan adalah JavaScript.

Inilah yang Anda Butuhkan Untuk Mempelajari JavaScript Secara Mendalam

javascriptoo – Flash, PHP, dan Java semuanya merupakan pesaing kuat untuk mendominasi. JavaScript, kata mereka, adalah bahasa yang ringan, bahasa mainan untuk melakukan efek browser kecil yang konyol dan (paling baik) beberapa validasi data formulir dasar.

Baca Juga : Alasan Mengapa Javascript Begitu Populer

Tapi hari ini, JavaScript mungkin adalah bahasa pengembangan web yang paling penting. Meskipun sebagian besar pengembangan sisi server dilakukan dengan salah satu bahasa pemrograman yang lebih “konvensional”, hampir setiap situs web menggunakan sejumlah JavaScript untuk fungsionalitas “front-end”. Selain itu, evolusi bahasa itu sendiri dan standarisasi teknologi browser telah memunculkan aplikasi web dalam browser yang hampir seluruhnya didukung oleh JavaScript. Kerangka kerja JavaScript telah melemparkan tren itu ke hyperdive.

Selain itu, JavaScript tidak lagi hanya bahasa front-end. Berkat proyek Node.js , sekarang dimungkinkan untuk dengan mudah menggunakan JavaScript untuk membangun aplikasi sisi server juga. Dan dengan munculnya teknologi seperti MongoDB yang menggunakan JSON sebagai bahasa serialisasi data, sekarang dimungkinkan untuk menggunakan JavaScript untuk seluruh aplikasi web, dari penyimpanan data hingga pemrosesan sisi server hingga UI front-end.

Apa pun bahasa pemrograman lain yang Anda gunakan atau minati untuk dipelajari, semakin jelas bahwa JavaScript adalah sine qua non dari pengembangan web modern. Saatnya bagi kita semua untuk “ mempelajari JavaScript secara mendalam. ”

Sejarah

JavaScript awalnya dikembangkan di Netscape, untuk digunakan di browser mereka Netscape Navigator. Ini terjadi pada pertengahan 1990-an, selama puncak perang browser , ketika setiap pengembang browser berusaha memenangkan pangsa pasar dengan membuat fitur unik yang tidak tersedia di browser lain. Ada juga garis pemikiran selama periode itu bahwa browser akan, dalam banyak hal, merupakan perpanjangan dari sistem operasi dan pengalaman pengguna secara umum.

Tampaknya ada beberapa pemikiran bahwa browser Netscape akan menjadi bagian dari sistem operasi terdistribusi yang menjalankan versi portabel dari lingkungan Java. Ini akan dilengkapi dengan bahasa scripting yang ringan, yang secara resmi disebut LiveScript dan dikembangkan di bawah nama kode proyek Mocha .

Tidak jelas apakah itu rencana itu, atau taktik pemasaran yang sederhana, tetapi “bahasa yang ditafsirkan ringan” ini akhirnya mendapat nama “JavaScript,” meskipun bahasa tersebut tidak memiliki hubungan nyata dengan Java .

JavaScript ditambahkan ke browser Netscape Navigator pada tahun 1996, dan Microsoft dengan cepat merekayasa balik implementasi JavaScript untuk browser Internet Explorer mereka, yang mereka sebut JScript. Sayangnya, implementasinya sangat berbeda. Pendekatan yang berbeda untuk HTML dan apa yang menjadi rumit CSS bahkan lebih, karena JavaScript ada terutama untuk memanipulasi objek dalam dokumen — model dokumen yang berbeda menghasilkan hasil yang berbeda.

Sudah umum selama periode ini untuk melihat situs web menginstruksikan penggunanya bahwa situs “Berfungsi Terbaik di Netscape” atau “Berfungsi Terbaik di Internet Explorer.” (AOL, yang akhirnya membeli Netscape, juga memiliki browser dalam aplikasi. Tapi tidak ada yang bekerja dengan baik.)

Netscape mengirimkan JavaScript ke Ecma, sebagai standar internasional yang potensial di seluruh industri. Pada tahun 1997, versi standar, yang disebut “ECMAScript” dirilis. Ada sejumlah rilis versi berikutnya sejak saat itu. Ecma, dan bukan Netscape, sekarang menentukan arah bahasa.

Berkat tren umum menuju standarisasi browser yang dimulai pada awal 2000-an, dan sebagian besar selesai pada pertengahan 2010, sebagian besar browser menerapkan ECMAScript (dan Model Objek Dokumen HTML) dengan cara yang hampir sama. Hari ini, Anda dapat cukup yakin bahwa aplikasi berbasis JavaScript yang ditulis sesuai dengan praktik terbaik yang diakui secara luas akan berfungsi di semua browser utama.

Fitur bahasa

Orientasi Objek

JavaScript berorientasi objek. Ini agak aneh dengan cara ini; ada objek, tetapi tidak ada kelas. Begitu banyak pemrogram berorientasi objek “klasik” sering kali merasa agak kurang, atau akan mengatakan itu sebenarnya tidak berorientasi objek sama sekali. Tapi itu.

Hampir semuanya (tidak termasuk beberapa nilai primitif) dalam JavaScript adalah objek, dan karena itu dapat memiliki metode dan data yang dapat diakses. Objek tidak dipakai dari kelas, namun. Mereka dikloning dari objek lain. Daripada menulis kelas, Anda cukup membuat objek prototipe. Objek baru kemudian dikloning dari sana, tetapi metode dan properti baru dapat ditambahkan ke objek baru sesuai kebutuhan.

Ada beberapa keuntungan dan kerugian dari pendekatan ini. Satu (mungkin) keuntungan adalah bahwa jika Anda hanya membutuhkan satu contoh objek, Anda tidak memiliki overhead untuk menulis seluruh kelas dan kemudian menulis kode yang membuat instance itu. Mengingat domain utama JavaScript (dokumen web), ini sangat masuk akal.

Kerugian utama pada dasarnya bersifat filosofis. Dalam aplikasi yang kompleks, tentu saja Anda akan menulis sejumlah objek prototipe yang dicatat digunakan , tetapi hanya dikloning menjadi objek baru — pada dasarnya menciptakan kembali paradigma berbasis kelas. Kecuali benda aslinya masih ada, sebagai benda. Tidak ada perbedaan esensial di antara mereka, meskipun mereka digunakan dengan cara yang berbeda secara fundamental.

Dikotomi kelas-objek mewakili pandangan tertentu (“klasik,” bahkan) tentang realitas – ide-ide abstrak tentang kategori dan jenis hal-hal yang dipakai menjadi objek nyata. JavaScript menyajikan pandangan realitas yang lebih berantakan (tetapi, mungkin, lebih realistis) di mana tidak ada gagasan Platonis yang abstrak; hanya ada objek ini, dan yang ini, dan yang ini, dan seterusnya.

Struktur

JavaScript, seperti kebanyakan bahasa pemrograman modern, mengikuti model pemrograman terstruktur . Sintaksnya agak mirip dengan C, dengan if, else, for, dan whilesemua berperilaku seperti yang diharapkan. Tidak seperti C, JavaScript kebanyakan hanya mendukung lingkup variabel tingkat fungsi . Pelingkupan level blok ditambahkan agak baru-baru ini tetapi (pada tulisan ini), masih jauh lebih aman untuk dikodekan seolah-olah ini tidak ada.

Berbicara tentang variabel, variabel dalam JavaScript diketik secara dinamis . Ini berarti Anda tidak perlu mendeklarasikan variabel dan tipe datanya (string, angka, dll.) sebelum benar-benar menetapkan nilai ke variabel. Ini sangat berbeda dari C, tetapi cukup umum di antara bahasa skrip yang ditafsirkan lainnya.

Fungsi dalam JavaScript adalah kelas satu , yang berarti bahwa mereka dapat diteruskan sebagai argumen ke fungsi lain atau disimpan sebagai variabel. Ini memungkinkan (antara lain) fungsi didefinisikan di dalam fungsi lain. Ini sering digunakan dalam aplikasi dalam browser untuk menyebabkan fungsi didefinisikan pada titik tertentu.

Misalnya, dalam kode jQuery berikut , fungsi bagian dalam menyesuaikan targetproperti semua tautan di halaman sehingga tautan tersebut terbuka di tab baru jika tautan tersebut menautkan ke domain lain. Fungsi ini dibuat di dalam fungsi yang hanya dipanggil ketika dokumen siap (dimuat penuh). Ini adalah contoh kecil (yang kebetulan digunakan di situs web ini), tetapi menggambarkan sesuatu yang sering dilakukan di JavaScript.

Putaran Acara

JavaScript bergantung pada loop peristiwa yang mendengarkan pesan (seperti klik mouse, penekanan tombol, atau pesan yang dibuat oleh objek lain), dan mengantrekan pesan tersebut untuk diproses. Fungsi dapat dibuat yang mendengarkan pesan tertentu, dan kemudian dipicu saat peristiwa itu terjadi (seperti contoh di atas, yang memicu fungsi dalam saat document readyperistiwa itu terjadi).

Arsitektur yang digerakkan oleh peristiwa ini sangat masuk akal untuk tujuan asli JavaScript (dan masih utama) — interaksi pengguna situs web. Ini memungkinkan aplikasi untuk mendengarkan input yang dibuat pengguna dan tidak diminta. Baru-baru ini, fitur ini telah dieksploitasi di lingkungan sisi server seperti Node.js . Memiliki sistem pendengar acara bawaan membuatnya (relatif) mudah untuk membangun aplikasi waktu nyata di domain seperti obrolan, permainan, kolaborasi, dan pengiriman.

Acara JavaScript

JavaScript menyediakan cara untuk berinteraksi dengan, dan memanipulasi, konten halaman web. Ini dapat dilakukan melalui kode yang disimpan dalam .jsfile tertaut, dalam blok kode di halaman <script>, atau dengan mengakses pemicu peristiwa JavaScript di dalam elemen dokumen.

Sebuah peristiwa seperti sinyal atau pesan bahwa sesuatu telah terjadi. Misalnya, setiap kali mouse Anda mengklik elemen halaman, onclickperistiwa untuk elemen tersebut diaktifkan. Dalam keadaan normal, ini tidak menyebabkan hal lain terjadi. Tetapi Anda dapat menggunakan peristiwa itu untuk memicu kode lain untuk dijalankan. Anda dapat menulis kode yang mengatakan (pada intinya): Setiap kali hal ini terjadi, lakukan hal lain ini.

Anda dapat membayangkan kemungkinannya di sini:

  • Setiap kali gambar ini diklik… muat gambar berikutnya.
  • Setiap kali mouse memasuki area ini… ubah warnanya.
  • Setiap kali mouse mendekati bilah navigasi … buka jendela modal dengan penawaran khusus.

JavaScript, menjadi bahasa yang dirancang untuk interaksi pengguna, adalah “event-driven”. Ada banyak peristiwa dalam JavaScript, dan banyak di antaranya terkait dengan elemen HTML.