新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Javascript 中的解構賦值語法
首先在 ES6中引入的“解構賦值語法”允許把數(shù)組和對象中的值插入到不同的變量中。雖然看上去可能很難,但實際上很容易學習和使用。

數(shù)組解構
數(shù)組解構非常簡單。你所要做的就是為數(shù)組中的每個值聲明一個變量。你可以定義更少的變量,而不是數(shù)組中的索引(即,如果你只想解處理前幾個值),請?zhí)^某些索引或甚至使用 REST 模式將所有剩余的值放到新數(shù)組中。
- const nums = [ 3, 6, 9, 12, 15 ];
- const [
- k, // k = 3
- l, // l = 6
- , // Skip a value (12)
- ...n // n = [12, 15]
- ] = nums;
對象解構
對象解構與數(shù)組解構非常相似,主要區(qū)別是可以按名稱引用對象中的每個key,從而創(chuàng)建一個有相同名稱的變量。此外還可以將鍵解構為新的變量名,只解構所需的 key,然后用 rest 模式將剩余的 key 解構為新對象。
- const obj = { a: 1, b: 2, c: 3, d: 4 };
- const {
- a, // a = 1
- c: d, // d = 3
- ...rest // rest = { b: 2, d: 4 }
- } = obj;
嵌套解構
嵌套對象和數(shù)組可以通過相同的規(guī)則來進行解構。區(qū)別在于可以將嵌套 key 或值直接解構為變量,而不必將父對象存儲在變量本身中。
- const nested = { a: { b: 1, c: 2 }, d: [1, 2]};
- const {
- a: {
- b: f, // f = 1
- ...g // g = { c: 2 }
- },
- ...h // h = { d: [1, 2]}
- } = nested;
高級解構
由于數(shù)組的行為與對象相似,所以可以通過使用索引作為對象解構分配中的 key,用解構分配語法從數(shù)組中獲取特定值。用這種方法還可以得到數(shù)組的其他屬性(例如數(shù)組的 length)。最后,如果解構后的值是 undefined,則還可以為解構過程中的變量定義默認值。
- const arr = [ 5, 'b', 4, 'd', 'e', 'f', 2 ];
- const {
- 6: x, // x = 2
- 0: y, // y = 5
- 2: z, // z = 4
- length: count, // count = 7
- name = 'array', // name = 'array' (not present in arr)
- ...restData // restData = { '1': 'b', '3': 'd', '4': 'e', '5': 'f' }
- } = arr;
本文題目:Javascript 中的解構賦值語法
文章鏈接:http://www.dlmjj.cn/article/dhodcjj.html


咨詢
建站咨詢
