91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javascript條件式訪問屬性和箭頭函數的示例分析

發布時間:2021-11-14 08:41:45 來源:億速云 閱讀:180 作者:小新 欄目:開發技術

這篇文章主要介紹了javascript條件式訪問屬性和箭頭函數的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

一、條件式訪問屬性

?. 是ES2020引入的新特性,是一個條件式屬性訪問操作符,當你訪問值為undefined變量的某個屬性值時,如果使用.操作符會直接報錯,如果使用條件式屬性訪問操作符來訪問會返回undefined

看例子:

let book = {price:10,
            edition:10,
            name:"javascirpt"
}

console.log(book.page.num)

直接報錯:

TypeError: Cannot read property 'num' of undefined

因為book.page 的值 undefinedundefined是沒有任何屬性值的,所以會報錯。

如果你無法確定某個值是undefined還是對象,除了可以用 if 語句來判斷之外,還可以直接用條件式訪問操作符來訪問某個屬性, 就算被訪問的對象是undefined,也不會報錯。而是返回 undefined

console.log(book.page?.num)

輸出:

undefined

二、箭頭函數介紹

箭頭函數是ES6中出現的一種定義函數的簡寫方法, 用=>分隔參數列表和函數體。

例子:

let square = x=>x**2;

console.log(square(3))

輸出:

9

這個函數的定義等價于傳統函數:

function square(x){
    return x**2
}

箭頭函數通常用于把一個未命名函數作為參數傳給另一個函數。

let nums = [1,2,3,4].map(x=>x*2)

console.log(nums)

輸出:

[ 2, 4, 6, 8 ]

箭頭函數讓代碼看起來更簡潔了。

如果使用傳統的function關鍵字來定義函數,看起來就顯得有點啰嗦

nums = [1,2,3,4].map(function(x){return x*2})

console.log(nums)

箭頭函數如果有多個參數,則需要使用括號括起來

const add = (x,y)=>x+y;

console.log(add(1,2))

如果箭頭函數的函數體有多條語句,則要將函數體用大括號括起來,并用return關鍵字返回值

const add = (x,y)=>{let tmp=x+y;return tmp};

console.log(add(1,2))

這時候箭頭函數的函數體和普通的function定義的函數體格式就完全一樣了。所以箭頭函數在簡單的單行語句中才顯得簡潔,并具有可讀性。一旦函數體過于復雜,再用箭頭函數來定義可讀性就沒那么好了。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“javascript條件式訪問屬性和箭頭函數的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大厂| 新蔡县| 库尔勒市| 新乐市| 济宁市| 都昌县| 玉环县| 沅陵县| 当雄县| 通化市| 宜兰县| 股票| 肃南| 安塞县| 全椒县| 麻栗坡县| 广宗县| 开封县| 新宁县| 阜平县| 肃宁县| 肇州县| 扎兰屯市| 寿宁县| 淮安市| 新巴尔虎右旗| 彰化县| 拉萨市| 荆州市| 泰宁县| 瑞丽市| 巴林右旗| 嘉黎县| 鹰潭市| 报价| 宁陵县| 博野县| 胶南市| 犍为县| 靖宇县| 宝丰县|