Pemecahan Struktur JavaScript
Sintaks dekonstruksi asosiasi
Sintaks dekonstruksi asosiasi akan melepas properti objek ke variabel:
let {firstName, lastName} = person;
Ini juga dapat melepas array dan setiap objek yang dapat diiterasi lainnya:
let [firstName, lastName] = person;
Dekonstruksi objek
实例
// Membuat objek const person = { firstName: "Bill", lastName: "Gates", umur: 50 ; // 解构 let {firstName, lastName} = person;
Urutan properti tak penting:
实例
// Membuat objek const person = { firstName: "Bill", lastName: "Gates", umur: 50 ; // 解构 let {lastName, firstName} = person;
Perhatian:
Dekonstruksi bukan penghancur.
Dekonstruksi tidak akan mengubah objek asli.
Nilai default objek
Untuk properti yang mungkin akan hilang, kami dapat menetapkan nilai default:
实例
// Membuat objek const person = { firstName: "Bill", lastName: "Gates", umur: 50 ; // 解构 let {firstName, lastName, country = "US"} = person;
Alias properti objek
实例
// Membuat objek const person = { firstName: "Bill", lastName: "Gates", umur: 50 ; // 解构 let {lastName: nama} = person;
Dekonstruksi string
Penggunaan dekonstruksi adalah untuk melepas karakter string.
实例
// Membuat string let nama = "W3Schools"; // 解构 let [a1, a2, a3, a4, a5] = nama;
Perhatian:
Dekonstruksi dapat digunakan untuk setiap objek yang dapat diiterasi.
Dekonstruksi array
Kami dapat mengekstrak variabel array ke variabel yang sendiri:
实例
// 创建一个数组 const buah = ["Bananas", "Oranges", "Apples", "Mangos"]; // 解构 let [buah1, buah2] = buah;
Melompati nilai array
Kami dapat menggunakan dua atau lebih tanda koma untuk melompati nilai array:
实例
// 创建一个数组 const buah = ["Bananas", "Oranges", "Apples", "Mangos"]; // 解构 let [buah1,,,buah2] = buah;
Nilai posisi array
Kami dapat mengambil nilai dari posisi indeks tertentu dalam array:
实例
// 创建一个数组 const buah = ["Bananas", "Oranges", "Apples", "Mangos"]; // 解构 let {[0]: buah1, [1]: buah2} = buah;
Properti kelebihan
Boleh menggunakan properti kelebihan di akhir sintaks dekonstruksi.
此语法会将所有剩余值存储到一个新数组中:
实例
// 创建一个数组 const numbers = [10, 20, 30, 40, 50, 60, 70]; // 解构 const [a, b, ...rest] = numbers;
解构 Map
实例
// 创建一个 Map const fruits = new Map([ ["apples", 500], ["bananas", 300], ["oranges", 200] }); // 解构 let text = ""; for (const [key, value] of fruits) { text += key + " is " + value; }
交换 JavaScript 变量
可以使用解构赋值交换两个变量的值:
实例
let firstName = "Bill"; let lastName = "Gates"; // 解构 [firstName, lastName] = [lastName, firstName];