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


Cookie JavaScript


Cookie memungkinkan Anda menyimpan informasi pengguna di halaman web.


Apa itu Cookie?

Cookie adalah data, disimpan dalam file teks kecil, di komputer Anda.

Ketika server web telah mengirim halaman web ke browser, koneksi dimatikan, dan server melupakan segala sesuatu tentang pengguna.

Cookie diciptakan untuk memecahkan masalah "bagaimana mengingat informasi tentang pengguna":

  • Saat pengguna mengunjungi halaman web, namanya dapat disimpan dalam cookie.
  • Lain kali pengguna mengunjungi halaman, cookie "mengingat" namanya.

Cookie disimpan dalam pasangan nama-nilai seperti:

username = John Doe

Saat browser meminta halaman web dari server, cookie milik halaman ditambahkan ke permintaan. Dengan cara ini server mendapatkan data yang diperlukan untuk "mengingat" informasi tentang pengguna.

Tak satu pun dari contoh di bawah ini akan berfungsi jika browser Anda menonaktifkan dukungan cookie lokal.


Buat Cookie dengan JavaScript

JavaScript dapat membuat, membaca, dan menghapus cookie dengan document.cookie properti.

Dengan JavaScript, cookie dapat dibuat seperti ini:

document.cookie = "username=John Doe";

Anda juga dapat menambahkan tanggal kedaluwarsa (dalam waktu UTC). Secara default, cookie dihapus saat browser ditutup:

document.cookie = "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC";

Dengan parameter jalur, Anda dapat memberi tahu browser jalur milik cookie tersebut. Secara default, cookie milik halaman saat ini.

document.cookie = "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/";


Baca Cookie dengan JavaScript

Dengan JavaScript, cookie dapat dibaca seperti ini:

let x = document.cookie;

document.cookieakan mengembalikan semua cookie dalam satu string seperti: cookie1=value; cookie2=nilai; cookie3=nilai;


Ubah Cookie dengan JavaScript

Dengan JavaScript, Anda dapat mengubah cookie dengan cara yang sama seperti Anda membuatnya:

document.cookie = "username=John Smith; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/";

Cookie lama ditimpa.


Hapus Cookie dengan JavaScript

Menghapus cookie sangat sederhana.

Anda tidak perlu menentukan nilai cookie saat menghapus cookie.

Cukup atur parameter kedaluwarsa ke tanggal yang lalu:

document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";

Anda harus menentukan jalur cookie untuk memastikan bahwa Anda menghapus cookie yang benar.

Beberapa browser tidak mengizinkan Anda menghapus cookie jika Anda tidak menentukan jalurnya.


String kue

Properti document.cookieterlihat seperti string teks biasa. Tapi tidak.

Bahkan jika Anda menulis seluruh string cookie ke document.cookie, ketika Anda membacanya lagi, Anda hanya dapat melihat pasangan nama-nilainya.

Jika Anda menyetel cookie baru, cookie lama tidak akan ditimpa. Cookie baru ditambahkan ke document.cookie, jadi jika Anda membaca document.cookie lagi, Anda akan mendapatkan sesuatu seperti:

cookie1 = nilai; cookie2 = nilai;

     

Jika Anda ingin menemukan nilai dari satu cookie yang ditentukan, Anda harus menulis fungsi JavaScript yang mencari nilai cookie dalam string cookie.


Contoh Cookie JavaScript

Dalam contoh berikut, kami akan membuat cookie yang menyimpan nama pengunjung.

Pertama kali pengunjung datang ke halaman web, dia akan diminta untuk mengisi namanya. Nama tersebut kemudian disimpan dalam cookie.

Kali berikutnya pengunjung tiba di halaman yang sama, dia akan mendapatkan pesan selamat datang.

Sebagai contoh kita akan membuat 3 fungsi JavaScript:

  1. Fungsi untuk menetapkan nilai cookie
  2. Fungsi untuk mendapatkan nilai cookie
  3. Fungsi untuk memeriksa nilai cookie

Fungsi untuk Mengatur Cookie

Pertama, kami membuat functionyang menyimpan nama pengunjung dalam variabel cookie:

Contoh

function setCookie(cname, cvalue, exdays) {
  const d = new Date();
  d.setTime(d.getTime() + (exdays*24*60*60*1000));
  let expires = "expires="+ d.toUTCString();
  document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}

Contoh menjelaskan:

Parameter dari fungsi di atas adalah nama cookie (cname), nilai cookie (cvalue), dan jumlah hari hingga cookie harus kedaluwarsa (exdays).

Fungsi menetapkan cookie dengan menambahkan bersama nama cookie, nilai cookie, dan string kedaluwarsa.


Fungsi untuk Mendapatkan Cookie

Kemudian, kami membuat functionyang mengembalikan nilai cookie yang ditentukan:

Contoh

function getCookie(cname) {
  let name = cname + "=";
  let decodedCookie = decodeURIComponent(document.cookie);
  let ca = decodedCookie.split(';');
  for(let i = 0; i <ca.length; i++) {
    let c = ca[i];
    while (c.charAt(0) == ' ') {
      c = c.substring(1);
    }
    if (c.indexOf(name) == 0) {
      return c.substring(name.length, c.length);
    }
  }
  return "";
}

Fungsi dijelaskan:

Ambil nama cookie sebagai parameter (cname).

Buat variabel (nama) dengan teks yang akan dicari (cname + "=").

Decode string cookie, untuk menangani cookie dengan karakter khusus, misalnya '$'

Pisahkan document.cookie pada titik koma ke dalam larik yang disebut ca (ca = decodeCookie.split(';')).

Ulangi array ca (i = 0; i < ca.length; i++), dan bacakan setiap nilai c = ca[i]).

Jika cookie ditemukan (c.indexOf(name) == 0), kembalikan nilai cookie (c.substring(name.length, c.length).

Jika cookie tidak ditemukan, kembalikan "".


Fungsi untuk Memeriksa Cookie

Terakhir, kami membuat fungsi yang memeriksa apakah cookie telah disetel.

Jika cookie disetel, itu akan menampilkan salam.

Jika cookie tidak disetel, itu akan menampilkan kotak prompt, menanyakan nama pengguna, dan menyimpan cookie nama pengguna selama 365 hari, dengan memanggil setCookiefungsi:

Contoh

function checkCookie() {
  let username = getCookie("username");
  if (username != "") {
   alert("Welcome again " + username);
  } else {
    username = prompt("Please enter your name:", "");
    if (username != "" && username != null) {
      setCookie("username", username, 365);
    }
  }
}

Semua bersama Sekarang

Contoh

function setCookie(cname, cvalue, exdays) {
  const d = new Date();
  d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
  let expires = "expires="+d.toUTCString();
  document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}

function getCookie(cname) {
  let name = cname + "=";
  let ca = document.cookie.split(';');
  for(let i = 0; i < ca.length; i++) {
    let c = ca[i];
    while (c.charAt(0) == ' ') {
      c = c.substring(1);
    }
    if (c.indexOf(name) == 0) {
      return c.substring(name.length, c.length);
    }
  }
  return "";
}

function checkCookie() {
  let user = getCookie("username");
  if (user != "") {
    alert("Welcome again " + user);
  } else {
    user = prompt("Please enter your name:", "");
    if (user != "" && user != null) {
      setCookie("username", user, 365);
    }
  }
}

Contoh di atas menjalankan checkCookie()fungsi saat halaman dimuat.