日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

盤點JavaScript中解構(gòu)賦值,數(shù)組解構(gòu)常用的數(shù)組操作

來源: 責(zé)編: 時間:2024-06-18 17:04:03 189觀看
導(dǎo)讀前言解構(gòu)賦值:是一種特殊的語法,它使可以將數(shù)組或?qū)ο蟆安鸢睘榈揭幌盗凶兞恐校驗橛袝r候使用變量更加方便。解構(gòu)操作對那些具有很多參數(shù)和默認(rèn)值等的函數(shù)也很奏效。一、數(shù)組解構(gòu)下面是一個將數(shù)組解構(gòu)到變量中的。例:

前言

tws28資訊網(wǎng)——每日最新資訊28at.com

解構(gòu)賦值:是一種特殊的語法,它使可以將數(shù)組或?qū)ο蟆安鸢睘榈揭幌盗凶兞恐校驗橛袝r候使用變量更加方便。解構(gòu)操作對那些具有很多參數(shù)和默認(rèn)值等的函數(shù)也很奏效。tws28資訊網(wǎng)——每日最新資訊28at.com

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

下面是一個將數(shù)組解構(gòu)到變量中的。tws28資訊網(wǎng)——每日最新資訊28at.com

例:      tws28資訊網(wǎng)——每日最新資訊28at.com

<script>            // 有一個存放了名字和姓氏的數(shù)組            let arr = ["Ilya", "Kantor"]            // 解構(gòu)賦值            // sets firstName = arr[0]            // and surname = arr[1]            let [firstName, surname] = arr;            alert(firstName); // Ilya            alert(surname); // Kantor</script>

tws28資訊網(wǎng)——每日最新資訊28at.com

現(xiàn)在就可以針對這些變量進(jìn)行操作,而不是針對原來的數(shù)組元素。tws28資訊網(wǎng)——每日最新資訊28at.com

當(dāng)與 split 函數(shù)(或其他返回值是數(shù)組的函數(shù))結(jié)合使用時,看起來就更優(yōu)雅了:tws28資訊網(wǎng)——每日最新資訊28at.com

let [firstName, surname] = "Ilya Kantor".split(' ');

1. “解構(gòu)”并不意味著“破壞”

這種語法叫做“解構(gòu)賦值”,因為它通過將結(jié)構(gòu)中的各元素復(fù)制到變量中來達(dá)到“解構(gòu)”的目的。但數(shù)組本身是沒有被修改的。tws28資訊網(wǎng)——每日最新資訊28at.com

2. 剩余的 ‘…’

如果不只是要獲得第一個值,還要將后續(xù)的所有元素都收集起來 — 可以使用三個點 "..." 來再加一個參數(shù)來接收“剩余的”元素:tws28資訊網(wǎng)——每日最新資訊28at.com

let [name1, name2, ...rest] = ["Julius", "Caesar", "Consul", "of the Roman Republic"];alert(name1); // Juliusalert(name2); // Caesar// 請注意,`rest` 的類型是數(shù)組alert(rest[0]); // Consulalert(rest[1]); // of the Roman Republicalert(rest.length); // 2

tws28資訊網(wǎng)——每日最新資訊28at.com

rest 的值就是數(shù)組中剩下的元素組成的數(shù)組。不一定要使用變量名 rest,也可以使用其他的變量名,只要確保它前面有三個點,并且在解構(gòu)賦值的最后一個參數(shù)位置上就行了。tws28資訊網(wǎng)——每日最新資訊28at.com

3. 默認(rèn)值

如果賦值語句中,變量的數(shù)量多于數(shù)組中實際元素的數(shù)量,賦值不會報錯。未賦值的變量被認(rèn)為是 undefined。tws28資訊網(wǎng)——每日最新資訊28at.com

let [firstName, surname] = [];alert(firstName); // undefinedalert(surname); // undefined

tws28資訊網(wǎng)——每日最新資訊28at.com

如果想要一個“默認(rèn)”值給未賦值的變量,可以使用 = 來提供:tws28資訊網(wǎng)——每日最新資訊28at.com

// 默認(rèn)值let [name = "Guest", surname = "Anonymous"] = ["Julius"];alert(name);    // Julius(來自數(shù)組的值)alert(surname); // Anonymous(默認(rèn)值被使用了)

tws28資訊網(wǎng)——每日最新資訊28at.com

默認(rèn)值可以是更加復(fù)雜的表達(dá)式甚至可以是函數(shù)調(diào)用,這些表達(dá)式或函數(shù)只會在這個變量未被賦值的時候才會被計算。tws28資訊網(wǎng)——每日最新資訊28at.com

使用了 prompt 函數(shù)來提供兩個默認(rèn)值,但它只會在未被賦值的那個變量上進(jìn)行調(diào)用:tws28資訊網(wǎng)——每日最新資訊28at.com

// 只會提示輸入姓氏let [name = prompt('name?'), surname = prompt('surname?')] = ["Julius"];alert(name);    // Julius(來自數(shù)組)alert(surname); // 輸入的值

二、對象解構(gòu)

解構(gòu)賦值同樣適用于對象。tws28資訊網(wǎng)——每日最新資訊28at.com

基本語法:

let {var1, var2} = {var1:…, var2:…}

在等號右側(cè)有一個已經(jīng)存在的對象,想把它拆開到變量中。等號左側(cè)包含了對象相應(yīng)屬性的一個“(pattern)模式”。tws28資訊網(wǎng)——每日最新資訊28at.com

在簡單的情況下,等號左側(cè)的就是 {...} 中的變量名列表。tws28資訊網(wǎng)——每日最新資訊28at.com

例 :tws28資訊網(wǎng)——每日最新資訊28at.com

let options = {    title: "Menu",  width: 100,  height: 200};let {title, width, height} = options;alert(title);  // Menualert(width);  // 100alert(height); // 200

tws28資訊網(wǎng)——每日最新資訊28at.com

屬性 options.title、options.width 和 options.height 值被賦給了對應(yīng)的變量。變量的順序并不重要,下面這個代碼也奏效:tws28資訊網(wǎng)——每日最新資訊28at.com

// 改變 let {...} 中元素的順序let {height, width, title} = { title: "Menu", height: 200, width: 100 }

就像數(shù)組或函數(shù)參數(shù)一樣,默認(rèn)值可以是任意表達(dá)式甚至可以是函數(shù)調(diào)用。它們只會在未提供對應(yīng)的值時才會被計算/調(diào)用。tws28資訊網(wǎng)——每日最新資訊28at.com

1. 剩余模式(pattern)

如果對象擁有的屬性數(shù)量比提供的變量數(shù)量還多,該怎么辦?tws28資訊網(wǎng)——每日最新資訊28at.com

可以只取其中的某一些屬性,然后把“剩余的”賦值到其他地方嗎?tws28資訊網(wǎng)——每日最新資訊28at.com

可以使用剩余模式(pattern),就像對數(shù)組那樣。一些較舊的瀏覽器不支持此功能(例如,使用 Babel 對其進(jìn)行填充),但可以在現(xiàn)代瀏覽器中使用。tws28資訊網(wǎng)——每日最新資訊28at.com

例:tws28資訊網(wǎng)——每日最新資訊28at.com

let options = {  title: "Menu",  height: 200,  width: 100};// title = 名為 title 的屬性// rest = 存有剩余屬性的對象let {title, ...rest} = options;// 現(xiàn)在 title="Menu", rest={height: 200, width: 100}alert(rest.height);  // 200alert(rest.width);   // 100

tws28資訊網(wǎng)——每日最新資訊28at.com

注:tws28資訊網(wǎng)——每日最新資訊28at.com

變量都是在賦值中通過正確方式聲明的:let {…} = {…}。當(dāng)然,也可以使用已有的變量,而不用 let,但這里有一個陷阱。tws28資訊網(wǎng)——每日最新資訊28at.com

三、智能函數(shù)參數(shù)

案例

解構(gòu)賦值語法:可以把所有參數(shù)當(dāng)作一個對象來傳遞,然后函數(shù)馬上把這個對象解構(gòu)成多個變量:tws28資訊網(wǎng)——每日最新資訊28at.com

// 傳遞一個對象給函數(shù)let options = {  title: "My menu",  items: ["Item1", "Item2"]};// ……然后函數(shù)馬上把對象展開成變量function showMenu({title = "Untitled", width = 200, height = 100, items = []}) {  // title, items – 提取于 options,  // width, height – 使用默認(rèn)值  alert( `${title} ${width} ${height}` ); // My Menu 200 100  alert( items ); // Item1, Item2}showMenu(options);

同樣可以使用帶有嵌套對象和冒號映射的更加復(fù)雜的解構(gòu):tws28資訊網(wǎng)——每日最新資訊28at.com

let options = {  title: "My menu",  items: ["Item1", "Item2"]};function showMenu({  title = "Untitled",  width: w = 100,  // width goes to w  height: h = 200, // height goes to h  items: [item1, item2] // items first element goes to item1, second to item2}) {  alert( `${title} ${w} ${h}` ); // My Menu 100 200  alert( item1 ); // Item1  alert( item2 ); // Item2}showMenu(options);

tws28資訊網(wǎng)——每日最新資訊28at.com

完整語法和解構(gòu)賦值是一樣的:tws28資訊網(wǎng)——每日最新資訊28at.com

function({  incomingProperty: varName = defaultValue})

注:tws28資訊網(wǎng)——每日最新資訊28at.com

對于參數(shù)對象,屬性 incomingProperty 對應(yīng)的變量是 varName,默認(rèn)值是 defaultValue。tws28資訊網(wǎng)——每日最新資訊28at.com

這種解構(gòu)假定了 showMenu() 函數(shù)確實存在參數(shù)。如果想讓所有的參數(shù)都使用默認(rèn)值,那應(yīng)該傳遞一個空對象:tws28資訊網(wǎng)——每日最新資訊28at.com

showMenu({}); // 不錯,所有值都取默認(rèn)值showMenu(); // 這樣會導(dǎo)致錯誤

可以通過指定空對象 {} 為整個參數(shù)對象的默認(rèn)值來解決這個問題:tws28資訊網(wǎng)——每日最新資訊28at.com

function showMenu({ title = "Menu", width = 100, height = 200 } = {}) {  alert( `${title} ${width} ${height}` );}showMenu(); // Menu 100 200

運行結(jié)果:tws28資訊網(wǎng)——每日最新資訊28at.com

tws28資訊網(wǎng)——每日最新資訊28at.com

整個參數(shù)對象的默認(rèn)是 {},因此總會有內(nèi)容可以用來解構(gòu)。tws28資訊網(wǎng)——每日最新資訊28at.com

四、總結(jié)

本文基于JavaScript基礎(chǔ),介紹了解構(gòu)賦值,數(shù)組解構(gòu),介紹了常見的數(shù)組操作,對象結(jié)構(gòu)。在實際應(yīng)用中需要注意的點,遇到的難點,提供了詳細(xì)的解決方法。tws28資訊網(wǎng)——每日最新資訊28at.com

使用JavaScript語言,能夠讓讀者更好的理解。代碼很簡單,希望能夠幫助讀者更好的學(xué)習(xí)。tws28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-94583-0.html盤點JavaScript中解構(gòu)賦值,數(shù)組解構(gòu)常用的數(shù)組操作

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Python 字符串脫引號的三大法寶(eval,literal_eval,json.loads)詳解

下一篇: 如果沒有這個 JavaScript 功能,95%的用戶會討厭使用你的應(yīng)用程序

標(biāo)簽:
  • 熱門焦點
  • Find N3入網(wǎng):最高支持16+1TB

    OPPO將于近期登場的Find N3折疊屏目前已經(jīng)正式入網(wǎng),型號為PHN110。本次Find N3在外觀方面相比前兩代有很大的變化,不再是小號的橫向折疊屏,而是跟別的廠商一樣采用了較為常見的
  • 官方承諾:K60至尊版將會首批升級MIUI 15

    全新的MIUI 15今天也有了消息,在官宣了K60至尊版將會搭載天璣9200+處理器和獨顯芯片X7的同時,Redmi給出了官方承諾,K60至尊重大更新首批升級,會首批推送MIUI 15。也就是說雖然
  • 紅魔電競平板評測:大屏幕硬實力

    前言:三年的疫情因為要上網(wǎng)課的原因激活了平板市場,如今網(wǎng)課的時代已經(jīng)過去,大家的生活都恢復(fù)到了正軌,這也就意味著,真正考驗平板電腦生存的環(huán)境來了。也就是面對著這種殘酷的
  • K8S | Service服務(wù)發(fā)現(xiàn)

    一、背景在微服務(wù)架構(gòu)中,這里以開發(fā)環(huán)境「Dev」為基礎(chǔ)來描述,在K8S集群中通常會開放:路由網(wǎng)關(guān)、注冊中心、配置中心等相關(guān)服務(wù),可以被集群外部訪問;圖片對于測試「Tes」環(huán)境或者
  • 雅柏威士忌多款單品價格大跌,泥煤頂流也不香了?

    來源 | 烈酒商業(yè)觀察編 | 肖海林今年以來,威士忌市場開始出現(xiàn)了降溫跡象,越來越多不斷暴漲的網(wǎng)紅威士忌也開始悄然回歸市場理性。近日,LVMH集團(tuán)旗下蘇格蘭威士忌品牌雅柏(Ardbeg
  • 新電商三兄弟,“抖快紅”成團(tuán)!

    來源:價值研究所作 者:Hernanderz 隨著內(nèi)容電商的概念興起,抖音、快手、小紅書組成的&ldquo;新電商三兄弟&rdquo;成為業(yè)內(nèi)一股不可忽視的勢力,給阿里、京東、拼多多帶去了巨大壓
  • iQOO Neo8系列新品發(fā)布會

    旗艦雙芯 更強(qiáng)更Pro
  • 機(jī)構(gòu)稱Q2全球智能手機(jī)出貨量同比下滑11% 蘋果份額依舊第2

    7月20日消息,據(jù)外媒報道,研究機(jī)構(gòu)的報告顯示,由于需求下滑,今年二季度全球智能手機(jī)的出貨量,同比下滑了11%,三星、蘋果等主要廠商的銷量,較去年同期均有下
  • OPPO K11樣張首曝:千元機(jī)影像“卷”得真不錯!

    一直以來,OPPO K系列機(jī)型都保持著較為均衡的產(chǎn)品體驗,歷來都是2K價位的明星機(jī)型,去年推出的OPPO K10和OPPO K10 Pro兩款機(jī)型憑借各自的出色配置,堪稱有
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
亚洲在线中文字幕| 亚洲国产精品第一区二区| 欧美成人高清视频| 欧美黄色成人网| 欧美人与禽猛交乱配视频| 欧美日韩亚洲国产一区| 国产精品激情av在线播放| 国产精品亚洲综合色区韩国| 国产日韩综合| 亚洲成人资源| 99国产精品久久久久久久| 亚洲一区二区欧美| 久久精品中文字幕一区| 欧美成人精精品一区二区频| 欧美精品一区二区在线播放| 国产精品美女久久久| 国产中文一区| 亚洲另类自拍| 欧美一区二区三区的| 免费在线观看日韩欧美| 欧美四级伦理在线| 国内成人精品一区| 一本色道久久综合| 久久精品国产一区二区三区免费看 | 亚洲激情欧美| 亚洲午夜国产成人av电影男同| 欧美一区二区三区免费观看视频| 男人的天堂亚洲| 国产精品区二区三区日本| 在线精品高清中文字幕| 亚洲一区精彩视频| 牛牛影视久久网| 国产精品进线69影院| 在线看片成人| 亚洲伊人久久综合| 欧美成人国产va精品日本一级| 国产精品午夜国产小视频| 亚洲丁香婷深爱综合| 亚洲专区一区| 欧美日韩情趣电影| 韩日精品在线| 亚洲男女自偷自拍图片另类| 欧美+亚洲+精品+三区| 国产免费一区二区三区香蕉精| 亚洲日本一区二区三区| 久久精品动漫| 国产精品毛片在线看| 亚洲免费播放| 久久久久久亚洲精品中文字幕| 国产精品久久久99| 亚洲精品专区| 看欧美日韩国产| 国产视频一区在线观看一区免费| 夜色激情一区二区| 免费在线看成人av| 国内精品久久久久影院色| 亚洲一本视频| 欧美日韩成人激情| 亚洲电影第三页| 久久国产精品电影| 国产精品一区毛片| 亚洲深夜福利| 欧美精品免费播放| 亚洲福利视频网| 久久久久在线观看| 国产伦精品一区二区三区免费 | 国产一区在线视频| 亚洲视频免费在线观看| 欧美激情亚洲另类| 亚洲国产精品一区二区尤物区| 久久久久久久精| 国产一区欧美| 欧美一区二区三区四区夜夜大片| 欧美视频中文字幕| 亚洲精品一区二区三区婷婷月| 蜜臀99久久精品久久久久久软件| 国内揄拍国内精品久久| 欧美自拍偷拍午夜视频| 国产一区香蕉久久| 久久精品视频va| 国产综合18久久久久久| 久久久久成人精品免费播放动漫| 国产一区二区三区在线观看网站 | 午夜精品在线| 国产欧美不卡| 欧美亚洲综合另类| 国产精品永久在线| 午夜欧美精品| 国产欧美午夜| 久久xxxx| 激情五月婷婷综合| 久久青青草综合| 亚洲高清在线观看一区| 欧美成人精品1314www| 亚洲级视频在线观看免费1级| 欧美国产高清| av成人免费| 国产精品毛片va一区二区三区| 亚洲男人第一网站| 国产午夜精品久久| 久久免费视频观看| 91久久黄色| 欧美视频在线观看免费| 亚洲自拍偷拍麻豆| 国产午夜精品视频| 久久亚洲国产精品一区二区 | 国产一区二区精品丝袜| 久久久91精品国产| 亚洲国产福利在线| 欧美精品一区二| 亚洲制服丝袜在线| 国内精品国产成人| 欧美激情精品久久久久久| 亚洲视频电影图片偷拍一区| 国产模特精品视频久久久久| 玖玖玖国产精品| 日韩午夜激情| 国产精品羞羞答答| 久久综合久久综合九色| 日韩亚洲视频| 国产日本欧美视频| 蜜臀av性久久久久蜜臀aⅴ四虎| 日韩视频不卡| 国产欧美一区二区精品仙草咪| 老鸭窝毛片一区二区三区| 亚洲免费电影在线| 国产精品美女诱惑| 玖玖综合伊人| 亚洲欧美另类在线| 亚洲成人资源网| 国产精品久久婷婷六月丁香| 久久乐国产精品| 一本色道久久| 合欧美一区二区三区| 欧美日韩一区在线观看| 久久精品99无色码中文字幕| 亚洲人成网站777色婷婷| 国产精品青草综合久久久久99| 久久久久久久久久看片| 一本色道久久综合狠狠躁篇的优点 | 国产精品美女999| 久久色在线观看| 在线亚洲欧美| 国内精品视频在线播放| 欧美日本簧片| 欧美综合国产| 亚洲开发第一视频在线播放| 国产欧美精品一区二区色综合| 免费av成人在线| 午夜精品免费视频| 亚洲精品视频一区二区三区| 国产日产精品一区二区三区四区的观看方式 | 欧美大片一区二区| 欧美伊久线香蕉线新在线| 日韩视频不卡中文| 狠狠v欧美v日韩v亚洲ⅴ| 国产精品v亚洲精品v日韩精品 | 欧美国产精品专区| 欧美中文字幕视频| 一区二区三区视频在线 | 黄色日韩网站视频| 国产精品久久久久久久一区探花| 美脚丝袜一区二区三区在线观看| 亚洲制服少妇| 日韩网站免费观看| 激情综合色综合久久| 国产精品免费一区豆花| 欧美女激情福利| 裸体丰满少妇做受久久99精品| 亚洲欧美日韩精品久久久| 99精品欧美一区二区三区综合在线| 好看的av在线不卡观看| 国产乱子伦一区二区三区国色天香 | 国产一区亚洲| 国产精品视频一区二区三区| 欧美日韩精品二区第二页| 麻豆精品一区二区综合av| 久久成人综合网| 亚洲欧美一区二区三区在线| 一本色道久久综合亚洲精品高清| 亚洲国产一区二区三区青草影视 | 国产日韩欧美在线看| 欧美午夜精品一区| 欧美日韩裸体免费视频| 欧美肥婆在线| 免费欧美在线视频| 久久男人av资源网站| 久久福利资源站| 欧美与欧洲交xxxx免费观看| 亚洲综合激情| 亚洲婷婷在线| 一区二区日韩免费看| 99精品国产高清一区二区| 亚洲黄色尤物视频| 亚洲第一狼人社区| 在线日韩av片| 永久免费视频成人| 一区二区亚洲| 在线精品视频一区二区三四| 樱花yy私人影院亚洲| 影音先锋亚洲视频| 亚洲国产高清视频| 91久久精品网| 亚洲免费黄色|