Pagdakip ng JavaScript

Dekonstruktibong syntax

Ang dekonstruktibong syntax ay magbunuin ng mga attribute ng object sa mga variable:

let {firstName, lastName} = person;

Ito ay maaari ring magbunuin ng array at anumang iba pang maaaring iterahin na bagay:

let [firstName, lastName] = person;

Dekonstruktibong object

实例

// paglikha ng object
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50
};
// 解构
let {firstName, lastName} = person;

亲自试一试

Ang pagkakasunod-sunod ng attribute ay hindi mahalaga:

实例

// paglikha ng object
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50
};
// 解构
let {lastName, firstName} = person;

亲自试一试

Babala:

Ang dekonstruktibo ay hindi mapanira.

Ang dekonstruktibo ay hindi nagbabago sa orihinal na object.

Default na halaga ng object

Para sa mga maaaring mawawala na attribute, maaari naming itakda ang default na halaga:

实例

// paglikha ng object
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50
};
// 解构
let {firstName, lastName, country = "US"} = person;

亲自试一试

Pangalawang pangalan ng attribute ng object

实例

// paglikha ng object
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50
};
// 解构
let {lastName: name} = person;

亲自试一试

Dekonstruktibong string

Ang paggamit ng dekonstruktibo ay maaring gamitin upang bunuin ang mga character ng string.

实例

// paglikha ng string
let name = "W3Schools";
// 解构
let [a1, a2, a3, a4, a5] = name;

亲自试一试

Babala:

Ang pagdekonstruktibo ay maaaring gamitin sa anumang maaaring iterahin na bagay.

Dekonstruktibong array

Maaari naming i-extract ang variable ng array sa sariling variable nito:

实例

// 创建一个数组
const fruits = ["Bananas", "Oranges", "Apples", "Mangos"];
// 解构
let [fruit1, fruit2] = fruits;

亲自试一试

Lisanin ang halaga ng array

Maaari naming gamitin ang dalawang o higit pang kumpos ng komo upang lisanin ang halaga ng array:

实例

// 创建一个数组
const fruits = ["Bananas", "Oranges", "Apples", "Mangos"];
// 解构
let [fruit1,,,fruit2] = fruits;

亲自试一试

Indeks ng array

Maaari naming makuha ang halaga mula sa partikular na indeks ng array:

实例

// 创建一个数组
const fruits = ["Bananas", "Oranges", "Apples", "Mangos"];
// 解构
let {[0]: fruit1, [1]: fruit2} = fruits;

亲自试一试

Mga natitirang atributo

Maaaring gamitin ang mga natitirang atributo sa katapusan ng dekonstruktibong pang-gramatika.

此语法会将所有剩余值存储到一个新数组中:

实例

// 创建一个数组
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];

亲自试一试