MDN wants to talk to developers like you: https://qsurvey.mozilla.com/s3/8d22564490d8

Pengantar

Terjemahan ini belum lengkap. Mohon bantu menerjemahkan artikel ini dari Bahasa Inggris.

Bab ini mengenalkan dan membahas konsep yang mendasar di javascript.

Apa yang perlu anda ketahui

Pada pedoman ini kami anggap Anda memiliki pengetahuan dasar dari:

  • Pemahaman umum dari internet dan World Wide Web (WWW).
  • Mengetahui dan memahami bahasa markup atau HyperText Markup Language (HTML).
  • Berpengalaman di beberapa bahasa pemrograman. Jika anda baru belajar programming, silakan coba salah satu tutorial yang terdapat di halaman awal tentang JavaScript.

Kemana untuk mencari informasi JavaScript 

Dokumentasi JavaScript di MDN menyediakan materi diantaranya:

  • Learning the Web menyajikan info untuk pemula, mengenalkan konsep dasar dari programming dan internet.
  • JavaScript Guide (pedoman ini) menyajikan gambaran tentang bahasa JavaScript dan objek - objeknya.
  • JavaScript Reference menyajikan referensi material yang detail untuk JavaScript.

Jika anda baru mengenal JavaScript, mulailah dari area belajar dan Paduan JavaScript. Setelah anda memiliki pemahaman yang kuat tentang dasar - dasar javascript, anda bisa menggunakan Referensi JavaScript untuk melihat lebih detail setiap objek dan statement.

Apa itu JavaScript?

Javascript adalah bahasa yang dapat berjalan di banyak platform (cross-platform), bahasa scripting berorientasi objek. Bahasa yang simple dan ringan. Terdapat di lingkungan host (mis. web browser), JavaScript dapat dihubungkan dengan objek di dalam lingkungannya untuk memberikan kontrol program atas objek - objek tersebut.

JavaScript berisi pustaka dasar (standard library) dari objek - objek, Seperti Array, Date, dan Math, juga set inti dari elemen bahasa seperti operator, control structure, dan statement. Inti JavaScript dapat diperluas untuk tujuan yang beragam dengan melengkapinya dengan objek tambahan; misal:

  • Client-side JavaScript memperluas inti bahasa dengan melengkapi objek untuk mengontrol browser beserta Document Object Model (DOM). Misal, ekstensi pada sisi klien memungkinkan sebuah aplikasi untuk menambahkan elemen pada sebuah form  HTML dan merespon event dari klien / user seperti mouse klik, input form, dan navigasi halaman.
  • Server-side JavaScript memperluas inti bahasa dengan melengkapi objek - objek terkait dengan menjalankan javascript pada sisi server. Misal, ekstensi pada sisi server memungkinkan sebuah aplikasi untuk berkomunikasi dengan database, menyediakan informasi yang kontinuitas dari setiap permintaan ke aplikasi lain, atau melakukan manipulasi file di server.

JavaScript dan Java

JavaScript dan Java memang memiliki kemiripan, namun pada dasarnya berbeda satu dengan lainnya. Bahasa JavaScript menyerupai Java, tapi tidak memiliki static typing dan strong type checking seperti di Java. JavaScript mengikuti sebagian besar ekspresi sintaks Java, konvensi penamaan dan konstruksi kontrol aliran dasar dan inilah yang menjadi alasan kenapa merubah nama dari LiveScript ke JavaScript.

Perbedaan dengan sistem compile-time di java class dibangun menggunakan deklarasi, Javascript mendukung sistem runtime yang berbasis pada sebagian kecil dari data tipe yang mewakili numerik, Boolean, dan nilai string. Javascript memiliki objek model berbasis prototype dibandingkan menggunakan class berbasis objek model. Model berbasis prototype mewariskan dynamic inheritance; yaitu, apa yang diwariskan dapat berbeda pada setiap objek. Javascript juga mendukung fungsi tanpa persyaratan deklaratif yang khusus. Function bisa berupa properti dari objek, mengeksekusi sebagai tipe method yang bebas.

JavaScript merupakan bahasa yang berbentuk sangat bebas dibandingkan java. Anda tidak perlu mendeklarasikan semua variabel, class dan method. Anda tidak perlu khawatir apakah sebuah method itu , private, atau protected, dan anda tidak perlu mengimplementasikan interface. Variable, parameter, dan function return types tidak bertipe eksplisit.

Java merupakan bahasa berbasis class didesain untuk eksekusi yang cepat dan aman dalam penulisan. yang artinya,misal, anda tidak dapat mengubah integer di Java ke referensi objek atau mengakses private memori dengan membobol bytecode. Java berbasis class model artinya program secara eksklusif dari kelas dan methodnya. Class inheritance dan penulisan yang aman pada java umumnya membutuhkan objek hirarki yang berhubungan sangat kuat. Syarat ini membuat bahasa Java lebih kompleks dibanding pemrograman Javascript.

Sebaliknya, JavaScript mewarisi inti dari baris yang lebih kecil, bahasa bertipe dinamis sepeti HyperTalk dan dBASE. Bahasa scripting ini menawarkan alat untuk pengguna yang lebih luas karena sintaksnya yang lebih mudah, berfokus pada fungsional built-in, dan persyaratan yang minimal untuk membuat objek.

JavaScript dibandingkan Java
JavaScript Java
Berorientasi Objek. Tidak ada perbedaan antar tipe objek. Inheritance melalui mekasnisme prototype, serta properties dan method bisa ditambahkan ke setiap objek secara dinamis. Berbasis Class. Objek dibagi ke dalam kelas dan instansi dengan semua inheritance melalui hirarki class. Class dan instansi tidak dapat memiliki properti atau method yang ditambahkan secara dinamis.
Tipe data variabel tidak dideklarasikan(dynamic typing). Tipe data variabel harus di deklarasikan (static typing).
Tidak secara otomatis ditulis di hard disk. Dapat secara otomatis ditulis ke hard disk.

Untuk informasi lebih lanjut perbedaan antara JavaScript dan Java, lihat bagian Detail dari object model.

Spesifikasi JavaScript dan ECMAScript

Javascript distandarisasikan di Ecma International — the European association for standardizing information and communication systems (ECMA was formerly an acronym for the European Computer Manufacturers Association) to deliver a standardized, international programming language based on JavaScript. This standardized version of JavaScript, called ECMAScript, behaves the same way in all applications that support the standard. Companies can use the open standard language to develop their implementation of JavaScript. The ECMAScript standard is documented in the ECMA-262 specification. See New in JavaScript to learn more about different versions of JavaScript and ECMAScript specification editions.

The ECMA-262 standard is also approved by the ISO (International Organization for Standardization) as ISO-16262. You can also find the specification on the Ecma International website. The ECMAScript specification does not describe the Document Object Model (DOM), which is standardized by the World Wide Web Consortium (W3C) and/or WHATWG (Web Hypertext Application Technology Working Group). The DOM defines the way in which HTML document objects are exposed to your script. To get a better idea about the different technologies that are used when programming with JavaScript, consult the article JavaScript technologies overview.

JavaScript documentation versus the ECMAScript specification

The ECMAScript specification is a set of requirements for implementing ECMAScript; it is useful if you want to implement standards-compliant language features in your ECMAScript implementation or engine (such as SpiderMonkey in Firefox, or v8 in Chrome).

The ECMAScript document is not intended to help script programmers; use the JavaScript documentation for information on writing scripts.

The ECMAScript specification uses terminology and syntax that may be unfamiliar to a JavaScript programmer. Although the description of the language may differ in ECMAScript, the language itself remains the same. JavaScript supports all functionality outlined in the ECMAScript specification.

The JavaScript documentation describes aspects of the language that are appropriate for a JavaScript programmer.

Getting started with JavaScript

Getting started with JavaScript is easy: all you need is a modern Web browser. This guide includes some JavaScript features which are only currently available in the latest versions of Firefox, so using the most recent version of Firefox is recommended.

There are two tools built into Firefox that are useful for experimenting with JavaScript: the Web Console and Scratchpad.

The Web Console

The Web Console shows you information about the currently loaded Web page, and also includes a command line that you can use to execute JavaScript expressions in the current page.

To open the Web Console (Ctrl+Shift+K), select "Web Console" from the "Developer" menu, which is under the "Tools" menu in Firefox. It appears at the bottom of the browser window. Along the bottom of the console is a command line that you can use to enter JavaScript, and the output appears in the pane above:

Scratchpad

The Web Console is great for executing single lines of JavaScript, but although you can execute multiple lines, it's not very convenient for that, and you can't save your code samples using the Web Console. So for more complex examples Scratchpad is a better tool.

To open Scratchpad (Shift+F4), select "Scratchpad" from the "Developer" menu, which is under the menu in Firefox. It opens in a separate window and is an editor that you can use to write and execute JavaScript in the browser. You can also save scripts to disk and load them from disk.

Hello world

To get started with writing JavaScript, open the Scratchpad and write your first "Hello world" JavaScript code:

function greetMe(yourName) {
  alert("Hello " + yourName);
}

greetMe("World");

Select the code in the pad and hit Ctrl+R to watch it unfold in your browser!

In the following pages, this guide will introduce you to the JavaScript syntax and language features, so that you will be able to write more complex applications.

Tag Dokumen dan Kontributor

 Kontributor untuk laman ini: ardhyui, rmsubekti, adeyahya
 Terakhir diperbarui oleh: ardhyui,