国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

JavaScript的解構技巧:排除對象屬性、避免命名沖突、交換……

開發 前端
解構是JavaScript中的一個強大工具。它可以從數組和對象中提取出有意義的變量,并用解構來處理JSON數據、嵌套對象或數組非常方便。

解構是JavaScript中的一個強大工具。它可以從數組和對象中提取出有意義的變量,并用解構來處理JSON數據、嵌套對象或數組非常方便。

[[333599]]

下面的示例展示了創建解構賦值表達式的最簡單的方法之一:

JavaScript的解構技巧:排除對象屬性、避免命名沖突、交換……

如果左側的解構表達式中傳遞的變量名與對象屬性不匹配,則將該值作為undefined進行分配。雖然這個例子看起來非常簡單,但它還可以通過解構語法實現更多可能。

一起去探索一些解構用例吧。

通過解構別名進行重命名

無論是在頂級對象中,還是在需要導入庫時,別名都有助于防止重名,在import語句中解構別名與解構對象不同:

  1. import { some-func1, some-func2 } from 'some-library';//use aliasing 
  2. import { some-func1 as newFunc } from 'some-library'; 
  3. newFunc();import { * as some-library } from 'some-library' 

要提供一個與屬性名不同的解構變量,需要使用冒號語法來指定它,如下所示:

  1. const { work: {job : profession} } = person; 
  2. console.log(profession) // Blogger 

使用解構表達式交換變量

通常會使用一個臨時變量進行交換,示例如下(也可以通過一個數學公式和XOR運算符來做):

  1. let a = 1
  2. let b = 2
  3. let temp; 
  4.  
  5. temp = a
  6. a = b
  7. b = temp

通過解構,可以在單個表達式中輕松地交換變量,如下所示:

  1. [a, b] = [b, a]; 

更有趣的一點是,解構能夠交換n個變量:

  1. [a, b, c] = [b, c, a] 

訪問嵌套屬性并設置默認值

解構也適用于嵌套對象,并有助于避免長鏈列表。示例如下:

  1. const person = { 
  2.   name: 'Fred', 
  3.   age: 26, 
  4.   work: { 
  5.     job: 'Blogger' 
  6.   } 
  7. };const {work: {job} } = person; 
  8. console.log(job); //prints: Blogger 

注意,在上面的代碼中,work 引用沒有被解構,只有最后一個嵌套屬性被分配給變量—job。為了使work 也得到嵌套屬性,我們需要

  1. const {work, work: {job} } = person; 

如果被解構對象中不存在鍵值,則會得到undefined 值。可以通過設置一個默認值來避免這種情況,如下所示:

JavaScript的解構技巧:排除對象屬性、避免命名沖突、交換……

現在考慮一下work 的屬性是否完全不可用。在這種情況下,需要用以下方式來書寫上面的解構表達式:

  1. const { work: { job = 'NA'salary = 'NA'} = {} } = person; 

在解構中使用計算屬性

到目前為止,都在利用靜態鍵值進行解構。但是對于具有動態鍵值的對象,需要使用計算屬性。計算屬性用方括號指定,如下所示:

  1. const person = { 
  2.   name: 'Fred', 
  3.   work: { 
  4.     job: 'Blogger' 
  5.   } 
  6. };let name = 'name'const { [name] : username } = person; 
  7. console.log(username); //Fred 

也可以創建屬性數組,如下所示:

JavaScript的解構技巧:排除對象屬性、避免命名沖突、交換……

訪問數組元素

就像對象解構一樣,數組解構也可以通過語法實現,如下所示:

  1. const arr = [1,2,3]; 
  2. const [a, b] = arr; 
  3. //a = 1b = 2 

可以在=后面為每個解構變量設置默認值。如果有不想分配給局部變量的項目,也可以選擇跳過??梢酝ㄟ^逗號操作符來實現:

  1. //skips the 2nd element 
  2. const [first,,third] = arr; 

對一個大數組使用逗號操作符可能是一項乏味的任務,我們可以使用類似語法的對象解構——通過索引訪問元素,如下所示:

  1. const arr = ['a','b','c','d'];const {0: first, 3: fourth} = arr; 
  2. console.log(fourth) //d 
  3. const {0: first, 3: fourth, 9: tenth = 'z'} = arr; 

上一條語句中定義了一個默認值,以防數組沒有索引。也可以用訪問對象的方式來訪問嵌套數組元素:

  1. const arr = ['a', [1, 2, 3] 
  2. const [first, [one, two, three]] = arr; 

使用Rest語法省略屬性

Rest語法用于挑選多個元素并將它們設置為一個新元素,這有助于解構時省略某個屬性。

  1. const arr = ["Hello", "How" , "are","you"];var [hello,...remaining] = arr; 
  2. console.log(remaining) // ["How" , "are", "you"] 

上述表達式也可以用于克隆數組??梢允褂孟嗤倪壿媮頇z索或刪除嵌套對象:

JavaScript的解構技巧:排除對象屬性、避免命名沖突、交換……

解構可能看起來有些棘手,但一旦適應了,就可以利用它創建特定的模式,快速獲取所需要的東西。盡快掌握它吧!

 

責任編輯:趙寧寧 來源: 今日頭條
相關推薦

2023-07-06 07:55:15

Redis內存數據庫

2013-08-26 14:18:12

SELinux

2010-04-01 18:22:36

無線交換機故障

2021-04-01 17:04:34

Javascript語法數組

2024-09-10 15:34:18

JavaScript解構賦值

2024-07-17 11:35:31

JavaScript解構賦值

2021-07-26 05:20:47

JavaScript解構賦值數組解構

2024-06-18 10:28:46

2021-05-10 08:45:34

JavaScript開發對象

2020-06-09 09:13:12

JavaScript重構對象

2023-10-16 07:55:15

JavaScript對象技巧

2015-03-10 13:50:42

smartycss語法

2010-01-06 10:58:06

建立JavaScrip

2023-08-23 10:19:25

數據MySQL

2019-12-03 19:09:19

JavaScriptNumbers阿里云計算

2021-03-26 23:41:19

JavaScript對象開發

2025-06-10 01:55:00

代碼Promise

2012-03-29 09:57:06

jQuery

2023-07-24 07:11:43

2011-07-12 18:20:45

降權
點贊
收藏

51CTO技術棧公眾號

亚洲欧美另类动漫| 国产精品亚洲欧美日韩一区在线| 精品一区二区三区视频| 日本成人在线视频网址| 日韩和的一区二在线| 日韩一级高清毛片| 国产免费永久在线观看| 亚洲成人av电影在线| 无码少妇一区二区三区芒果| 精品无人码麻豆乱码1区2区 | 黄色网在线免费观看| 午夜精品福利一区二区三区av | 久久久久久女乱国产| 亚洲女性喷水在线观看一区| 色婷婷综合网站| 国产精品午夜电影| 国产91在线视频观看| 99精品欧美一区二区蜜桃免费 | 丰满少妇又爽又紧又丰满69| 久久综合久色欧美综合狠狠| 国产午夜大地久久| 99re8在线精品视频免费播放| 国产免费一区二区视频| 99re亚洲国产精品| 中文字幕无码不卡免费视频| 中文字幕免费不卡| 久草免费在线播放| 精品国产91久久久| 青草久久伊人| 6080亚洲精品一区二区| √天堂8资源中文在线| 亚洲精品综合精品自拍| 国产91欧美| 韩国日本不卡在线| 91亚洲成人| 久久久久网址| 国产成人a级片| 亚洲一级片网站| 亚洲电影一级黄| 久热国产在线| 深夜福利日韩在线看| 国产精品国产| 成人av番号网| 日本成人在线不卡视频| 成人在线观看你懂的| 亚洲精选视频免费看| 在线视频您懂的| 日韩免费高清av| 国产精品99久久免费| 国产成人拍精品视频午夜网站| 97精品在线| 日韩av电影在线观看| 成人福利视频在线看| gogo高清免费视频| 天堂91在线| 欧美人与禽zozo性伦| 中文字幕成在线观看| 91精品国产高清自在线| 亚洲女同中文字幕| 欧美裸体网站| 久久精品亚洲一区二区三区浴池| 在线电影av| 亚洲欧美中文在线视频| 成人午夜网址| 好吊色欧美一区二区三区四区 | 亚洲一区 二区| 91网站免费看| 国产麻豆9l精品三级站| 丁香婷婷激情| 精品国产麻豆免费人成网站| 91成人噜噜噜在线播放| 国内精品久久国产| 2020国产精品久久精品美国| 久久这里精品| 中文字幕在线亚洲| 国产精品a久久久久| www插插插无码视频网站| 精品动漫一区二区| 国产精品亲子伦av一区二区三区| 国产综合久久久久久| 成人性视频免费网站| 麻豆影视在线| 久久亚洲精品国产亚洲老地址| 欧美特黄视频| 99.玖玖.com| 亚洲精品www| 欧美aa国产视频| 四虎最新网站| 国产一区二区三区视频免费| 国产欧美日韩在线一区二区| 四虎精品欧美一区二区免费| 欧美午夜激情小视频| 日韩最新av| 51xx午夜影福利| 欧美美女一区二区| 欧洲视频一区| 亚洲福利精品视频| 一区二区三区无码高清视频| 另类天堂av| 成人av一区| 国产剧情日韩欧美| 中文字幕一区二区三区在线观看 | 欧美综合在线视频观看| 成年人看的毛片| 欧美一区二区视频观看视频| 欧美色爱综合| 亚洲天堂av线| 中文亚洲视频在线| 日韩高清不卡在线| 欧美成熟毛茸茸| 日韩av观看网址| 国产欧美精品一区二区色综合朱莉| av在线不卡免费| 免费国产在线精品一区二区三区| 亚洲高清视频在线| 精品盗摄女厕tp美女嘘嘘| 亚洲欧美在线精品| 欧美美女操人视频| 91蜜桃网址入口| 激情久久99| 精品丰满人妻无套内射| 亚洲欧美日韩直播| 激情图片小说一区| 成人勉费视频| 男人天堂网站在线| 亚洲午夜色婷婷在线| 国产盗摄一区二区三区| √天堂8资源中文在线| 亚洲三区视频| 亚洲成人黄色在线观看| 日本怡春院一区二区| 国产网红女主播精品视频| 日本高清视频一区二区三区| 日韩视频一区二区在线观看| 日韩精品三区四区| 瑟瑟视频在线看| 亚洲 欧美 综合 另类 中字| 最新的欧美黄色| 久久亚洲综合av| 国产精品香蕉| 日本高清中文字幕| 91偷拍精品一区二区三区| 欧美日韩在线免费视频| 噜噜噜在线观看免费视频日韩 | 在线观看日韩精品| 伊人久久大香线蕉综合热线| 男女啪啪在线观看| 亚洲二区自拍| 一本色道久久综合狠狠躁篇的优点 | 韩国版免费三体| 国产精品成人一区二区三区吃奶 | 国产欧美欧美| 国产黄色大片在线观看| 国产对白在线播放| 久久亚洲影音av资源网| 欧美日韩久久一区| 一本大道久久a久久综合| 亚洲深夜福利在线观看| 国产福利图片| 欧美在线免费视频| 一区二区欧美在线观看| 日韩精品丝袜美腿| 轻轻色免费在线视频| 国产二区不卡| 日韩视频一区二区三区在线播放| 久久精品国产一区二区三| 欧美激情喷水| 天天干天天草天天| 成人激情黄色网| 91精品久久久久久久91蜜桃| 国产美女精品一区二区三区| 精品国产第一国产综合精品| 99re6热在线精品视频播放| www.一区二区三区| 亚洲国产欧美久久| 中文字幕免费观看一区| 先锋资源久久| 国产乱码精品一区二三赶尸艳谈| 色欲av无码一区二区人妻| 欧美一级视频一区二区| 欧美伊人久久大香线蕉综合69 | 玖草视频在线| 欧美一区1区三区3区公司 | 免费福利在线观看| 伊人色综合久久天天五月婷| 91国语精品自产拍在线观看性色| 欧美性色黄大片| 国产成人av电影在线播放| 国产一区二区电影在线观看| av免费在线免费| 日韩欧美国产片| 青青草原亚洲| 91精品国产一区| 欧美r级电影在线观看| 国产欧美日本一区视频| 激情欧美日韩一区| 国产一区二区三区国产精品| 在线看黄色av| 777视频在线观看| 一级全黄肉体裸体全过程|