Skip to content

Commit 0743fe6

Browse files
committed
fix: Merge branch 'main' of github.com:bellshade/Javascript into ui-server
2 parents 717a8ba + 2f4e170 commit 0743fe6

File tree

3 files changed

+140
-0
lines changed

3 files changed

+140
-0
lines changed
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# Window.sessionStorage
2+
3+
sessionStorage adalah sebuah properti yang dapat menyimpan data berdasarkan pasangan antara `key` dan `value` di browser web, tetapi tidak permanen seperti [localStorage](https://github.com/bellshade/Javascript/tree/main/learn/Web_Api/localStorage). Data akan hilang jika browser sudah ditutup.
4+
5+
Data di dalam sessionStorage disimpan pada setiap tab yang dibuka, jadi jika 2 tab atau lebih membuka halaman yang sama maka session dari setiap tab akan berbeda.
6+
7+
Untuk dapat melihat data di dalam sessionStorage caranya sama seperti [localStorage](https://github.com/bellshade/Javascript/tree/main/learn/Web_Api/localStorage) yaitu dengan cara membuka `DevTools` pada browser kemudian buka tab `Application`. Pada sidebar sebelah kiri terdapat beberapa menu lainnya, termasuk sessionStorage.
8+
9+
## Bekerja dengan sessionStorage
10+
11+
Dalam menuliskan sintaks tidak jauh berbeda dengan [localStorage](https://github.com/bellshade/Javascript/tree/main/learn/Web_Api/localStorage) yaitu terdapat 2 cara yaitu `window.sessionStorage` atau `sessionStorage`.
12+
13+
Beberapa metode dan properti yang bisa digunakan sessionStorage diantaranya: `.setItem()`, `getItem()`, `.removeItem()`, `.clear()`, dan `.length`.
14+
15+
### sessionStorage.setItem()
16+
17+
Metode ini digunakan untuk mengatur / menyimpan data ke dalam sessionStorage. Parameter yang dibutuhkan ada 2 yaitu nama `key` dan `value`.
18+
19+
Contoh:
20+
```js
21+
// Simpan data ke sessionStorage
22+
sessionStorage.setItem("tes", "hello world!");
23+
```
24+
Saat code di atas dijalankan maka di dalam sessionStorage akan terdapat data baru dengan `key` bernama `"tes"` yang berisi `"hello world!"`.
25+
26+
`value` yang dikirimkan ke dalam sessionStorage hanya bisa yang bertipe data String, Number, dan Boolean.
27+
Jika ingin memasukkan `value` berupa objek atau array maka harus dikonversikan menjadi sebuah String menggunakan method `JSON.stringify()`.
28+
29+
Contoh:
30+
```js
31+
// Simpan data ke sessionStorage
32+
const array = ["hello", 1, true];
33+
sessionStorage.setItem("array", JSON.stringify(array));
34+
```
35+
36+
### sessionStorage.getItem()
37+
38+
Metode ini digunakan untuk mengambil data dari dalam sessionStorage. Parameter yang dibutuhkan adalah nama `key` dari data yang ingin diambil. Data yang dikembalikan adalah `value` dari data yang diambil. Jika data yang diambil tidak ada maka akan mengembalikan nilai `null`.
39+
40+
Contoh:
41+
```js
42+
// Simpan data ke sessionStorage
43+
sessionStorage.setItem("tes", "hello world!");
44+
45+
// Ambil data dari sessionStorage
46+
console.log(sessionStorage.getItem("tes")); // "hello world!"
47+
console.log(sessionStorage.getItem("foo")); // null
48+
```
49+
50+
Jika sebelumnya `value` yang disimpan ke dalam sessionStorage berupa objek atau array yang telah diubah menjadi String. Maka untuk mengambil dan mengembalikan ke tipe data semula adalah dengan menggunakan method `JSON.parse()`.
51+
52+
Contoh:
53+
```js
54+
// Simpan data ke sessionStorage
55+
const array = ["hello", 1, true];
56+
sessionStorage.setItem("array", JSON.stringify(array));
57+
58+
// Ambil data dari sessionStorage
59+
const newArray = JSON.parse(sessionStorage.getItem("array"));
60+
console.log(newArray); // ["hello", 1, true]
61+
```
62+
63+
### sessionStorage.removeItem()
64+
65+
Seperti namanya, metode ini digunakan untuk menghapus data dari sessionStorage. Parameter yang dibutuhkan adalah nama `key` dari data yang akan dihapus.
66+
67+
Contoh:
68+
```js
69+
// Simpan data ke sessionStorage
70+
sessionStorage.setItem("tes", "hello world!");
71+
72+
// Hapus data dari sessionStorage
73+
sessionStorage.removeItem("tes");
74+
```
75+
76+
### sessionStorage.clear()
77+
78+
Metode ini digunakan untuk menghapus **seluruh** data dari dalam sessionStorage.
79+
80+
Contoh
81+
```js
82+
// Simpan data ke sessionStorage
83+
const array = ["hello", 1, true];
84+
sessionStorage.setItem("array", JSON.stringify(array));
85+
sessionStorage.setItem("tes", "hello world!");
86+
87+
// Hapus semua data sessionStorage
88+
sessionStorage.clear();
89+
```
90+
91+
### sessionStorage.length
92+
93+
Properti ini berisi berapa banyak data yang ada di dalam sessionStorage.
94+
95+
Contoh
96+
```js
97+
// Simpan data ke sessionStorage
98+
sessionStorage.setItem("tes1", "hello world!");
99+
sessionStorage.setItem("tes2", "selamat pagi!");
100+
sessionStorage.setItem("tes3", "apa kabar?");
101+
102+
// Cek banyak data dalam sessionStorage
103+
console.log(sessionStorage.length); // 3
104+
```
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
4+
<head>
5+
<meta charset="UTF-8">
6+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
7+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
8+
<title>Bellshade - sessionStorage</title>
9+
</head>
10+
11+
<body>
12+
<script src="sessionStorage.js"></script>
13+
</body>
14+
15+
</html>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// Simpan data ke sessionStorage
2+
const array = ["hello", 1, true];
3+
sessionStorage.setItem("array", JSON.stringify(array));
4+
sessionStorage.setItem("tes", "hello world!");
5+
sessionStorage.setItem("num", 5);
6+
7+
// Ambil data dari sessionStorage
8+
console.log(sessionStorage.getItem("tes"));
9+
console.log(sessionStorage.getItem("num"));
10+
console.log(sessionStorage.getItem("foo"));
11+
const newArray = JSON.parse(sessionStorage.getItem("array"));
12+
console.log(newArray);
13+
14+
// Hapus data dari sessionStorage
15+
sessionStorage.removeItem("tes");
16+
17+
// Cek banyak data dalam sessionStorage
18+
console.log(sessionStorage.length);
19+
20+
// Hapus semua data sessionStorage
21+
// sessionStorage.clear();

0 commit comments

Comments
 (0)