自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Javascript 中的解構(gòu)賦值語(yǔ)法

開發(fā) 前端
首先在 ES6中引入的“解構(gòu)賦值語(yǔ)法”允許把數(shù)組和對(duì)象中的值插入到不同的變量中。雖然看上去可能很難,但實(shí)際上很容易學(xué)習(xí)和使用。

首先在 ES6中引入的“解構(gòu)賦值語(yǔ)法”允許把數(shù)組和對(duì)象中的值插入到不同的變量中。雖然看上去可能很難,但實(shí)際上很容易學(xué)習(xí)和使用。

[[390966]]

數(shù)組解構(gòu)

數(shù)組解構(gòu)非常簡(jiǎn)單。你所要做的就是為數(shù)組中的每個(gè)值聲明一個(gè)變量。你可以定義更少的變量,而不是數(shù)組中的索引(即,如果你只想解處理前幾個(gè)值),請(qǐng)?zhí)^(guò)某些索引或甚至使用 REST 模式將所有剩余的值放到新數(shù)組中。

  1. const nums = [ 3, 6, 9, 12, 15 ]; 
  2. const [ 
  3.   k,              // k = 3 
  4.   l,              // l = 6 
  5.   ,               // Skip a value (12) 
  6.   ...n            // n = [12, 15] 
  7. ] = nums; 

對(duì)象解構(gòu)

對(duì)象解構(gòu)與數(shù)組解構(gòu)非常相似,主要區(qū)別是可以按名稱引用對(duì)象中的每個(gè)key,從而創(chuàng)建一個(gè)有相同名稱的變量。此外還可以將鍵解構(gòu)為新的變量名,只解構(gòu)所需的 key,然后用 rest 模式將剩余的 key 解構(gòu)為新對(duì)象。

  1. const obj = { a: 1, b: 2, c: 3, d: 4 }; 
  2. const { 
  3.   a,              // a = 1 
  4.   c: d,           // d = 3 
  5.   ...rest         // rest = { b: 2, d: 4 } 
  6. } = obj; 

嵌套解構(gòu)

嵌套對(duì)象和數(shù)組可以通過(guò)相同的規(guī)則來(lái)進(jìn)行解構(gòu)。區(qū)別在于可以將嵌套 key 或值直接解構(gòu)為變量,而不必將父對(duì)象存儲(chǔ)在變量本身中。

  1. const nested = { a: { b: 1, c: 2 }, d: [1, 2]}; 
  2. const { 
  3.   a: { 
  4.     b: f,         // f = 1 
  5.     ...g          // g = { c: 2 } 
  6.   }, 
  7.   ...h            // h = { d: [1, 2]} 
  8. } = nested; 

高級(jí)解構(gòu)

由于數(shù)組的行為與對(duì)象相似,所以可以通過(guò)使用索引作為對(duì)象解構(gòu)分配中的 key,用解構(gòu)分配語(yǔ)法從數(shù)組中獲取特定值。用這種方法還可以得到數(shù)組的其他屬性(例如數(shù)組的 length)。最后,如果解構(gòu)后的值是 undefined,則還可以為解構(gòu)過(guò)程中的變量定義默認(rèn)值。

  1. const arr = [ 5, 'b', 4, 'd', 'e', 'f', 2 ]; 
  2. const { 
  3.   6: x,           // x = 2 
  4.   0: y,           // y = 5 
  5.   2: z,           // z = 4 
  6.   length: count,  // count = 7 
  7.   name = 'array', // name = 'array' (not present in arr) 
  8.   ...restData     // restData = { '1': 'b', '3': 'd', '4': 'e', '5': 'f' } 
  9. } = arr; 

 

責(zé)任編輯:趙寧寧 來(lái)源: 前端先鋒
相關(guān)推薦

2024-06-18 10:28:46

2021-07-26 05:20:47

JavaScript解構(gòu)賦值數(shù)組解構(gòu)

2024-07-17 11:35:31

JavaScript解構(gòu)賦值

2024-09-10 15:34:18

JavaScript解構(gòu)賦值

2019-12-03 19:09:19

JavaScriptNumbers阿里云計(jì)算

2024-11-01 11:15:48

2010-01-04 16:16:31

JavaScript語(yǔ)

2025-04-09 08:25:00

JavaScript數(shù)組解構(gòu)賦值

2024-09-27 08:35:33

數(shù)組JavaScript性能

2010-10-09 10:10:55

JavaScriptFunction對(duì)象

2021-07-27 06:49:11

C#存儲(chǔ)檢索

2020-07-14 13:16:32

JavaScript解構(gòu)對(duì)象

2009-06-09 21:59:13

語(yǔ)法高亮Javascript

2012-05-22 01:20:14

SyntaxHighlJavaScriptJava

2024-04-23 14:09:59

JavaScript開發(fā)

2023-05-17 09:31:38

華為分銷華為伙伴體系

2015-10-26 10:01:33

解構(gòu)C#小數(shù)運(yùn)算

2012-11-08 10:40:47

JavaScript原型鏈

2010-09-30 15:19:33

2010-09-17 10:24:47

SQL中IS NULL
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)