Tutorial JS

JS RUMAH Pengenalan JS JS Dimana Keluaran JS Pernyataan JS Sintaks JS Komentar JS Variabel JS JS Let JS Const Operator JS JS Aritmatika Tugas JS Tipe Data JS Fungsi JS Objek JS Acara JS String JS Metode String JS Pencarian String JS Template String JS Nomor JS Metode Nomor JS JS Array Metode Array JS Sortir Array JS Iterasi Array JS JS Array Const Tanggal JS Format Tanggal JS Metode Dapatkan Tanggal JS Metode Penetapan Tanggal JS JS Matematika JS Acak JS Boolean Perbandingan JS Ketentuan JS Beralih JS JS Loop Untuk JS Loop Untuk Masuk JS Loop Untuk Of JS Loop Sementara Istirahat JS JS Iterable JS Set Peta JS Tipe JS Konversi Tipe JS JS Bitwise JS RegExp Kesalahan JS Lingkup JS Pengangkatan JS Mode Ketat JS JS Kata Kunci ini Fungsi Panah JS Kelas JS JS JSON Debug JS Panduan Gaya JS Praktik Terbaik JS Kesalahan JS Kinerja JS Kata-kata Cadangan JS

Versi JS

Versi JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Tepi Sejarah JS

Objek JS

Definisi Objek Properti Objek Metode Objek Tampilan Objek Aksesor Objek Konstruktor Objek Prototipe Objek Obyek Iterable Set Objek Peta Objek Referensi Objek

Fungsi JS

Definisi Fungsi Parameter Fungsi Panggilan Fungsi Panggilan Fungsi Fungsi Terapkan Penutupan Fungsi

Kelas JS

Perkenalan Kelas Warisan Kelas Kelas Statis

JS Asinkron

Panggilan Balik JS JS Asinkron JS Janji JS Async/Menunggu

JS HTML DOM

Pengenalan DOM Metode DOM Dokumen DOM Elemen DOM HTML DOM Formulir DOM CSS DOM Animasi DOM Acara DOM Pendengar Acara DOM Navigasi DOM Node DOM Koleksi DOM Daftar Node DOM

JS Browser BOM

Jendela JS Layar JS Lokasi JS Sejarah JS JS Navigator Peringatan Munculan JS Waktu JS JS Cookies

JS Web API

Pengantar API Web API Formulir Web API Riwayat Web API Penyimpanan Web API Pekerja Web API Pengambilan Web API Geolokasi Web

JS AJAX

Pengenalan AJAX AJAX XMLHttp Permintaan AJAX Tanggapan AJAX File XML AJAX AJAX PHP AJAX ASP Basis Data AJAX Aplikasi AJAX Contoh AJAX

JS JSON

Perkenalan JSON Sintaks JSON JSON vs XML Tipe Data JSON Penguraian JSON Stringify JSON Objek JSON Array JSON Server JSON JSON PHP JSON HTML JSON JSONP

JS vs jQuery

Pemilih jQuery jQuery HTML jQuery CSS jQuery DOM

Grafik JS

Grafik JS JS Kanvas JS Plotly JS Chart.js Bagan Google JS JS D3.js

Contoh JS

Contoh JS JS HTML DOM Masukan HTML JS Objek HTML JS Acara HTML JS JS Browser Editor JS Latihan JS kuis JS Sertifikat JS

Referensi JS

Objek JavaScript Objek DOM HTML


Lingkup JavaScript

Lingkup menentukan aksesibilitas (visibilitas) variabel.

JavaScript memiliki 3 jenis cakupan:

  • Lingkup blok
  • Lingkup fungsi
  • Lingkup global

Lingkup Blok

Sebelum ES6 (2015), JavaScript hanya memiliki Lingkup Global dan Lingkup Fungsi .

ES6 memperkenalkan dua kata kunci JavaScript baru yang penting: letdan const.

Kedua kata kunci ini menyediakan Lingkup Blok dalam JavaScript.

Variabel yang dideklarasikan di dalam blok {} tidak dapat diakses dari luar blok:

Contoh

{
  let x = 2;
}
// x can NOT be used here

Variabel yang dideklarasikan dengan varkata kunci TIDAK boleh memiliki cakupan blok.

Variabel yang dideklarasikan di dalam blok {} dapat diakses dari luar blok.

Contoh

{
  var x = 2;
}
// x CAN be used here

Lingkup Lokal

Variabel yang dideklarasikan dalam fungsi JavaScript, menjadi LOKAL untuk fungsi tersebut.

Contoh

// code here can NOT use carName

function myFunction() {
  let carName = "Volvo";
  // code here CAN use carName
}

// code here can NOT use carName

Variabel lokal memiliki Lingkup Fungsi :

Mereka hanya dapat diakses dari dalam fungsi.

Karena variabel lokal hanya dikenali di dalam fungsinya, variabel dengan nama yang sama dapat digunakan dalam fungsi yang berbeda.

Variabel lokal dibuat saat fungsi dimulai, dan dihapus saat fungsi selesai.


Lingkup Fungsi

JavaScript memiliki ruang lingkup fungsi: Setiap fungsi membuat ruang lingkup baru.

Variabel yang didefinisikan di dalam suatu fungsi tidak dapat diakses (terlihat) dari luar fungsi.

Variabel yang dideklarasikan dengan var, let dan constsangat mirip ketika dideklarasikan di dalam suatu fungsi.

Mereka semua memiliki Lingkup Fungsi :

function myFunction() {
  var carName = "Volvo";   // Function Scope
}
function myFunction() {
  let carName = "Volvo";   // Function Scope
}
function myFunction() {
  const carName = "Volvo";   // Function Scope
}

Variabel JavaScript Global

Variabel yang dideklarasikan di luar fungsi, menjadi GLOBAL .

Contoh

let carName = "Volvo";
// code here can use carName

function myFunction() {
// code here can also use carName
}

Variabel global memiliki Lingkup Global :

Semua skrip dan fungsi pada halaman web dapat mengaksesnya. 


Lingkup Global

Variabel yang dideklarasikan secara Global (di luar fungsi apa pun) memiliki Global Scope .

Variabel global dapat diakses dari mana saja dalam program JavaScript.

Variabel yang dideklarasikan dengan var, let dan constsangat mirip ketika dideklarasikan di luar blok.

Mereka semua memiliki Lingkup Global :

var x = 2;       // Global scope
let x = 2;       // Global scope
const x = 2;       // Global scope

Variabel JavaScript

Dalam JavaScript, objek dan fungsi juga merupakan variabel.

Lingkup menentukan aksesibilitas variabel, objek, dan fungsi dari berbagai bagian kode.



Otomatis Global

Jika Anda menetapkan nilai ke variabel yang belum dideklarasikan, maka secara otomatis akan menjadi variabel GLOBAL .

Contoh kode ini akan mendeklarasikan variabel global carName, bahkan jika nilainya ditetapkan di dalam suatu fungsi.

Contoh

myFunction();

// code here can use carName

function myFunction() {
  carName = "Volvo";
}

Modus Ketat

Semua browser modern mendukung menjalankan JavaScript dalam "Mode Ketat".

Anda akan mempelajari lebih lanjut tentang cara menggunakan mode ketat di bab selanjutnya dari tutorial ini.

Dalam "Mode Ketat", variabel yang tidak dideklarasikan tidak secara otomatis bersifat global.


Variabel Global dalam HTML

Dengan JavaScript, cakupan globalnya adalah lingkungan JavaScript.

Dalam HTML, lingkup global adalah objek jendela.

Variabel global yang didefinisikan dengan varkata kunci milik objek jendela:

Contoh

var carName = "Volvo";
// code here can use window.carName

Variabel global yang didefinisikan dengan letkata kunci bukan milik objek jendela:

Contoh

let carName = "Volvo";
// code here can not use window.carName

Peringatan

JANGAN membuat variabel global kecuali Anda berniat melakukannya.

Variabel global Anda (atau fungsi) dapat menimpa variabel jendela (atau fungsi).
Fungsi apa pun, termasuk objek jendela, dapat menimpa variabel dan fungsi global Anda.


Seumur Hidup Variabel JavaScript

Masa pakai variabel JavaScript dimulai saat dideklarasikan.

Variabel fungsi (lokal) dihapus ketika fungsi selesai.

Di browser web, variabel global dihapus saat Anda menutup jendela browser (atau tab).


Argumen Fungsi

Argumen fungsi (parameter) berfungsi sebagai variabel lokal di dalam fungsi.