జావాస్క్రిప్ట్ డిక్స్ట్రక్చర్

解构赋值语法

解构赋值语法将对象属性解包到变量中:

let {firstName, lastName} = person;

它还可以解包数组和任何其他可迭代对象:

let [firstName, lastName] = person;

对象解构

ఇన్స్టాన్స్

// 创建一个对象
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50
};
// డిస్ట్రక్చర్
let {firstName, lastName} = person;

స్వయంగా ప్రయత్నించండి

属性的顺序无关紧要:

ఇన్స్టాన్స్

// 创建一个对象
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50
};
// డిస్ట్రక్చర్
let {lastName, firstName} = person;

స్వయంగా ప్రయత్నించండి

注意:

解构不是破坏性的。

解构不会更改原始对象。

对象默认值

对于可能缺失的属性,我们可以设置默认值:

ఇన్స్టాన్స్

// 创建一个对象
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50
};
// డిస్ట్రక్చర్
let {firstName, lastName, country = "US"} = person;

స్వయంగా ప్రయత్నించండి

对象属性别名

ఇన్స్టాన్స్

// 创建一个对象
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50
};
// డిస్ట్రక్చర్
let {lastName: name} = person;

స్వయంగా ప్రయత్నించండి

字符串解构

解构的一个用途是解包字符串字符。

ఇన్స్టాన్స్

// 创建一个字符串
let name = "W3Schools";
// డిస్ట్రక్చర్
let [a1, a2, a3, a4, a5] = name;

స్వయంగా ప్రయత్నించండి

注意:

解构可以用于任何可迭代对象。

数组解构

我们可以将数组变量提取到自己的变量中:

ఇన్స్టాన్స్

// ఏకకార పేరులతో ప్రక్రియను సృష్టించండి
const fruits = ["Bananas", "Oranges", "Apples", "Mangos"];
// డిస్ట్రక్చర్
let [fruit1, fruit2] = fruits;

స్వయంగా ప్రయత్నించండి

అనునామవాని విలువలను తప్పిపెట్టవచ్చు

మేము రెండు లేదా మరిన్ని కొలువలతో అనునామవాని విలువలను తప్పిపెట్టవచ్చు:

ఇన్స్టాన్స్

// ఏకకార పేరులతో ప్రక్రియను సృష్టించండి
const fruits = ["Bananas", "Oranges", "Apples", "Mangos"];
// డిస్ట్రక్చర్
let [fruit1,,,fruit2] = fruits;

స్వయంగా ప్రయత్నించండి

అనునామవాని సూచిక

మేము అనునామవాని సూచికలో విలువలను తీసుకోవచ్చు:

ఇన్స్టాన్స్

// ఏకకార పేరులతో ప్రక్రియను సృష్టించండి
const fruits = ["Bananas", "Oranges", "Apples", "Mangos"];
// డిస్ట్రక్చర్
let {[0]: fruit1, [1]: fruit2} = fruits;

స్వయంగా ప్రయత్నించండి

రహస్య వినియోగించబడిన అంశం

మేము వినియోగించవచ్చు రహస్య వినియోగించబడిన అంశాలు వినియోగించవచ్చు.

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

ఇన్స్టాన్స్

// ఏకకార పేరులతో ప్రక్రియను సృష్టించండి
const numbers = [10, 20, 30, 40, 50, 60, 70];
// డిస్ట్రక్చర్
const [a, b, ...rest] = numbers;

స్వయంగా ప్రయత్నించండి

మ్యాప్ డిస్ట్రక్చర్

ఇన్స్టాన్స్

// మ్యాప్ సృష్టించండి
const fruits = new Map([
  ["apples", 500],
  ["bananas", 300],
  ["oranges", 200]
});
// డిస్ట్రక్చర్
let text = "";
for (const [key, value] of fruits) {
  text += key + " is " + value;
}

స్వయంగా ప్రయత్నించండి

జావాస్క్రిప్ట్ వేర్వేరు వేర్వేరు విషయాలను మార్చండి

రెండు వేర్వేరు వేర్వేరు విషయాలను మార్చడానికి డిస్ట్రక్చర్ అసిగ్న్మెంట్ ఉపయోగించవచ్చు:

ఇన్స్టాన్స్

let firstName = "Bill";
let lastName = "Gates";
// డిస్ట్రక్చర్
[firstName, lastName] = [lastName, firstName];

స్వయంగా ప్రయత్నించండి