国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

javascript - ES6 數組解構賦值 默認賦值

瀏覽:96日期:2023-09-03 18:04:03

問題描述

在看到阮一峰的ES6教程解構賦值,默認值時,這個地方沒太看懂。原文鏈接

注意,ES6 內部使用嚴格相等運算符(===),判斷一個位置是否有值。所以,如果一個數組成員不嚴格等于undefined,默認值是不會生效的

function f() { console.log(’aaa’);}let [x = f()] = [1];

書上說上面這段代碼等價于下面這段

let x;if ([1][0] === undefined) { x = f();} else { x = [1][0];}

請問一下這個[1][0]是哪里來的?不應該是下面這樣的嗎?

let x;if (1 === undefined) { x = f();} else { x = 1;}

問題解答

回答1:

數組解構時,原理是這樣的,把一個或者多個變量放到數組A中,然后讓這個數組A等于另一個數組B,那么解構時A數組某個位置的值就等于B數組對應位置的值。

let [x = f()] = [1];

這段代碼的意思就是,首先創建一個數組A,數組A中的第一項是x,然后又有一個數組B,B = [1].然后令 A = B.最后的效果就是A[0] = B[0],即x=B[0],也即x=[1][0]。所以在判斷是不是等于undefined時,要這樣

if([1][0] === undefined)回答2:

右邊[1]中的1才是對應x呀,即[1][0]對應x

回答3:

解構,解構,解構。。。所以目的是把等號右邊的東西解開,所以肯定是要把[1]給解開的。

所以let [x]=[1],那么x就是[1][0],也就是1。所以其實x的賦值是根據[1][0]來判斷的。

不知道說的理解不理解,還是給文檔吧:

https://developer.mozilla.org...

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 在线不卡一区二区三区日韩 | 免费看a级毛片 | 国产午夜精品久久理论片小说 | 国产粉嫩高中生无套第一次 | 国产成人精品日本亚洲语音1 | 欧美黑人性xxx猛交 欧美很黄视频在线观看 | 2022国内精品免费福利视频 | 欧美极品在线 | 精品国产系列 | 一级毛片成人免费看免费不卡 | 亚洲一级片免费看 | www女人| 91久久国产露脸精品免费 | 波多野结衣在线播放视频 | 国产高清一| 视频二区精品中文字幕 | 久久精品国产99久久 | 888米奇在线视频四色 | 香港台湾经典三级a视频 | 国产视频成人 | 成人毛片高清视频观看 | 男人扒开双腿女人爽视频免费 | 欧美在线观看成人高清视频 | 国产啪在线 | 国产成人精品视频免费大全 | 深夜福利视频在线观看免费视频 | 国产精品精品国产 | 国产精品视频免费观看调教网 | 日韩精品一区二区三区中文在线 | 国产真实乱子伦精品视手机观看 | 手机看片1024国产基地 | 美女视频网站永久免费观看软件 | 毛片免费观看视频 | 成人网视频在线观看免费 | 国产欧美精品一区二区三区 | 99在线热视频 | 久久综合婷婷香五月 | 亚洲天堂男人的天堂 | 精品一区二区三区免费观看 | 亚洲成av人在线视 | 日韩伦理一区二区三区 |