亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

ES6基礎之默認參數值

2019-11-19 12:05:21
字體:
來源:轉載
供稿:網友

如果調用函數的過程中,定義的參數缺失,此參數變量的值則會是undefined。怎么給缺失的參數賦值默認值,在ES6之前,沒有簡潔的語法設置缺失參數的默認值,但是我們一般可以這么編寫代碼解決缺失參數默認值:

function myFunction(x, y, z) { x = x === undefined ? 1 : x; y = y === undefined ? 2 : y; z = z === undefined ? 3 : z; console.log(x, y, z); //Output "6 7 3" } myFunction(6, 7);

這種寫法是不是比較麻煩?默認值的設置是不是不夠直觀?在ES6中,我們可以用更簡潔的語法進行實現,通過本篇文章你將學習到以下內容:

  • 使用ES6語法聲明參數默認
  • 值使用undefined傳
  • 參參數運算

使用ES6語法聲明參數默認值

我們可以使用ES6簡潔的語法,如下示例進行聲明函數參數的默認值:

function myFunction(x = 1, y = 2, z = 3) { console.log(x, y, z); }myFunction(6,7); // Outputs 6 7 3

在上述代碼示例中,我們在調用此函數中傳遞了前兩個參數,因此參數的默認值(即x=1和y=2)將會被覆蓋(即x=6和y=7)。由于第三個參數缺省,因此z使用默認值,將會是3。

使用undefined傳參

如果我們想讓具體某個參數使用默認值,我們可以使用undefined進行賦值,如下段代碼所示:

function myFunction(x = 1, y = 2, z = 3) { console.log(x, y, z); // Outputs "1 7 9" } myFunction(undefined,7,9);

是不是很簡單,只需要使用undefined,我們就可以指定具體某個參數使用默認值。

參數運算

在ES6中我們不僅可以給參數默認賦值具體的數值,同時參數賦值支持參數的邏輯運算進行賦值,如下段代碼所示:

function myFunction(x = 1, y = 2, z = x + y) { console.log(x, y, z); // Output "6 7 13" } myFunction(6,7);

在上述代碼中,我們只傳入了前兩個參數,第三個參數缺省,第三個參數的值默認值是則會是前兩個參數之和。

小節

今天的內容就到這里,當我們在開發一些工程應用通用組件時,都需要暴露一些接口以供使用。而這些接口的友好性是決定這個組件質量的一大指標,其中參數缺省值(默認值)的完善程度同時也影響接口的友好性,感謝ES6能讓我們用如此簡介的語法設置參數的缺省值。

與解構賦值默認值結合使用

這里有兩種寫法需要區分一下:

function m1({x=0,y=0} = {}){  return [x,y];}function m2({x,y} = {x:0,y:0}){  return [x,y];}m1({x:3});//[3,0]m2({x:3});//[3,undefined]m1({});//[0,0]m2({});//[undefined,undefined]

參數默認值的位置

通常情況下,定義了默認值的參數應該是函數的尾參數。因為這樣比較容易看出,到底省略了哪些參數,如果非尾部的參數設置默認值,實際上這個參數是無法省略的。

如果有默認值的參數都不是尾參數,這時,無法只省略該參數而不省略其后的參數,除非顯示輸入undefined。如果傳入undefined,那么就會觸發默認值,但是null沒有這個效果。

函數的length屬性

如果函數指定了默認值后,函數的length屬性就不會包含有默認值的參數。這是因為length屬性的含義是,該函數預期傳入的參數個數,某個參數指定默認值之后,預期傳入的參數個數就不包括這個參數了,同理,rest參數也不會計入length屬性。

函數參數默認值的類型

(1)變量
如果函數參數的默認值是一個變量,則該變量所處的作用域和其他變量的作用域規則相同,即是先前函數的作用域,然后再是全局作用域。

(2)函數
如果函數A的參數默認值是函數B,那么由于函數的作用域是其聲明的時候所在的作用域,函數B的作用域就在全局作用域而不是函數A的作用域。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲性夜色噜噜噜7777| 久久91精品国产| 久久激情五月丁香伊人| 亚洲欧洲在线观看| 亚洲精品videossex少妇| 91av福利视频| 国产精品老牛影院在线观看| 日韩欧中文字幕| 伊人亚洲福利一区二区三区| 91sa在线看| 久久久成人精品| 国产在线视频2019最新视频| 国产女同一区二区| 日韩欧美在线播放| 亚洲美腿欧美激情另类| 国产欧美一区二区三区在线看| 国产精品福利无圣光在线一区| 国产精品久久久久久久久久三级| 欧美高清videos高潮hd| 日本中文字幕不卡免费| 亚洲精品国产精品久久清纯直播| 色综合久久88色综合天天看泰| 欧美日韩国产成人高清视频| 这里只有精品丝袜| 亚洲国产日韩欧美综合久久| 亚洲乱码一区二区| 亚洲精品v欧美精品v日韩精品| 亚洲人成亚洲人成在线观看| 91精品免费久久久久久久久| 亚洲最大在线视频| 国产视频久久网| 国产亚洲精品久久久久久777| 日韩欧美精品在线观看| 欧美日韩国产在线看| 久久综合88中文色鬼| 91高清在线免费观看| 国产剧情日韩欧美| 亚洲第一精品久久忘忧草社区| 自拍偷拍亚洲区| 91丨九色丨国产在线| 国产精品免费视频xxxx| 1769国产精品| 久久久久久成人| 成人有码视频在线播放| 国产欧洲精品视频| 精品小视频在线| 亚洲欧洲自拍偷拍| 日韩中文字幕精品视频| 91久久夜色精品国产网站| xvideos亚洲| 亚洲天堂成人在线视频| 欧美日韩国产精品一区二区不卡中文| 国产在线观看不卡| 欧美激情女人20p| 成人国内精品久久久久一区| 亚洲美女在线视频| 亚洲香蕉成人av网站在线观看| 久久精品视频免费播放| 国产日韩欧美在线观看| 亚洲综合精品一区二区| 欧美日韩国产中文字幕| 亚洲综合精品伊人久久| 久久成人亚洲精品| 91国偷自产一区二区三区的观看方式| 91精品国产91久久久久久不卡| 国产精品美女在线观看| 欧美小视频在线| 欧美亚洲国产视频小说| 国产91精品高潮白浆喷水| 热草久综合在线| 在线观看国产成人av片| 成人免费自拍视频| 中日韩午夜理伦电影免费| 国产精品一区专区欧美日韩| 久久久久中文字幕2018| 黄色一区二区三区| 亚洲国产精品嫩草影院久久| 亚洲天堂第二页| 欧美电影免费观看大全| 亚洲自拍在线观看| 国产成人精品视频在线观看| 亚洲一区二区日本| 欧美中文字幕在线播放| 欧美日韩亚洲一区二区| 欧美做受高潮电影o| 国产精品视频男人的天堂| 久久久亚洲国产天美传媒修理工| 日本精品一区二区三区在线播放视频| 欧美情侣性视频| 欧美精品成人在线| 久久精品国产v日韩v亚洲| 国产精品一二三在线| 91po在线观看91精品国产性色| 亚洲精品久久久久久久久久久久久| 91精品久久久久久久久久久久久| 国产精自产拍久久久久久| 亚洲社区在线观看| 欧美电影在线播放| 91国产视频在线播放| 亚洲天堂日韩电影| 韩国视频理论视频久久| 国产精品日韩在线| 国产精品久久久久久久久久久新郎| 久久精品成人一区二区三区| 欧美视频一区二区三区…| 日韩精品在线私人| 在线亚洲午夜片av大片| 色狠狠av一区二区三区香蕉蜜桃| 成人免费在线网址| wwwwwwww亚洲| 欧美亚洲国产视频小说| 国产午夜精品免费一区二区三区| 欧美超级免费视 在线| 亚洲成人av在线| 色多多国产成人永久免费网站| 一区二区三区日韩在线| 日韩在线激情视频| 日韩av中文字幕在线免费观看| 亚洲欧美日韩爽爽影院| 日韩小视频网址| 久久久久久综合网天天| 91夜夜揉人人捏人人添红杏| 亚洲91精品在线观看| 亚洲国产又黄又爽女人高潮的| 亚洲精品免费在线视频| 欧美激情国产日韩精品一区18| 亚洲黄一区二区| 国产成人一区二区| 日韩黄色高清视频| 欧美中文字幕在线播放| 国产成人一区二区三区电影| 搡老女人一区二区三区视频tv| 亚洲三级av在线| 欧美专区福利在线| 国产丝袜高跟一区| 亚洲午夜久久久久久久| 日韩亚洲成人av在线| 日日骚av一区| 欧美一级成年大片在线观看| 欧美人在线观看| 免费成人高清视频| 亚洲福利视频网| 欧美日韩成人精品| 中文字幕日韩综合av| 亚洲精品丝袜日韩| 国产丝袜精品视频| 欧美一级免费看| 国产成人涩涩涩视频在线观看| 日韩欧美精品在线观看| 国产精品久久久久久久7电影| 国产成人一区二区三区电影| 日韩高清有码在线| 欧美亚洲国产视频小说| 欧美亚洲视频一区二区| 亚洲一区二区中文| 日韩天堂在线视频| 亚洲一区亚洲二区亚洲三区| 日本一区二区三区四区视频| 欧美激情二区三区| 亚洲美女av在线| 精品久久久久久久久国产字幕| 欧美电影电视剧在线观看| 久久6免费高清热精品| 68精品国产免费久久久久久婷婷|