摘要:可選鏈?zhǔn)秸{(diào)用這是我們現(xiàn)在中會(huì)遇到的問(wèn)題,原因是中沒(méi)有對(duì)象,然后我們這樣判斷這樣的寫法很差勁新特性可以這樣寫類似于的安全操作符空值合并我們判斷空值一般這樣或者這樣新特性可以這樣寫管道運(yùn)算符舉個(gè)例子,通過(guò)三個(gè)函數(shù)對(duì)字符串進(jìn)行處理,通常是這樣通過(guò)
1、Optional Chaining(可選鏈?zhǔn)秸{(diào)用)
const data = { user: {}, }; console.log(data.user.address.street); // Uncaught TypeError: Cannot read property "street" of undefined
這是我們現(xiàn)在 ES6 中會(huì)遇到的問(wèn)題,原因是 user 中沒(méi)有 address 對(duì)象,然后我們這樣判斷:
const street = data && data.user && data.user.address && data.user.address.street; console.log(street); // undefined
這樣的寫法很差勁
新特性可以這樣寫( ?. 類似于angular5的安全操作符)
console.log(data.user?.address?.street) //undefined
2、Nullish coalescing(空值合并)
我們判斷空值一般這樣:
value != null ? value : "default value";
或者這樣:
value || "default value"
新特性可以這樣寫( ?? ):
value ?? "default value";
3、Pipeline operator(管道運(yùn)算符)
舉個(gè)例子,通過(guò)三個(gè)函數(shù)對(duì)字符串進(jìn)行處理,通常是這樣:
function a(str) { return str + ", " + str;} function b(str) { return str[0].toUpperCase() + str.substring(1); } function c(str) { return str + "!"; } let result = c ( b ( a("hello") ) ); // "Hello, hello!"
通過(guò) 管道運(yùn)算符,我們可以這樣寫:
let result = "hello" |> a |> b |> c // "Hello, hello!"
參考:Here are three upcoming changes to JavaScript that you’ll love
(完)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/109834.html
摘要:或許,它還終將改變用戶對(duì)移動(dòng)的期待。通過(guò)一個(gè)場(chǎng)景實(shí)例了解前端處理大數(shù)據(jù)的無(wú)限可能隨著前端的飛速發(fā)展,在瀏覽器端完成復(fù)雜的計(jì)算,支配并處理大量數(shù)據(jù)已經(jīng)屢見(jiàn)不鮮。 推薦 1. 神經(jīng)網(wǎng)絡(luò)入門 http://www.ruanyifeng.com/blo... 眼下最熱門的技術(shù),絕對(duì)是人工智能,人工智能的底層模型是神經(jīng)網(wǎng)絡(luò)(neural network)。許多復(fù)雜的應(yīng)用(比如模式識(shí)別、自動(dòng)控制)...
摘要:你將看到它們的語(yǔ)法時(shí)時(shí)關(guān)注它們的進(jìn)展與更新。標(biāo)準(zhǔn)有個(gè)版本,個(gè)發(fā)布第個(gè)版本被放棄了。此建議的目的只是避免在起草建議被放棄或發(fā)生重大帶來(lái)的麻煩。如果使用過(guò)度,將導(dǎo)致性能下降。在這個(gè)場(chǎng)景中,數(shù)字和空字符串都被認(rèn)為是假的。 showImg(https://segmentfault.com/img/bVbj2Az?w=2000&h=1333); 想閱讀更多優(yōu)質(zhì)文章請(qǐng)猛戳GitHub博客,一年百來(lái)...
摘要:將摒棄的部分將移除和最近更名為模塊同時(shí)也會(huì)移除新增功能垃圾收集器被稱為收集器,將處理內(nèi)存分配而不實(shí)施任何實(shí)際的內(nèi)存回收機(jī)制。統(tǒng)計(jì)下目前的垃圾收集器,允許在聲明隱式類型的表達(dá)式的形式參數(shù)時(shí)使用類文件格式將被擴(kuò)展為支持一個(gè)新的常量池形式。 java11將摒棄的部分 Java 11 將移除 CORBA 和 Java EE(最近更名為 Jakarta EE)模塊同時(shí)也會(huì)移除 JavaFX ja...
摘要:版本發(fā)布月日,官博發(fā)文宣告正式發(fā)布。官方文檔提供了如下的示例終端上的輸出熱門文章我在阿里云做前端抓住我們核心的競(jìng)爭(zhēng)力,并同時(shí)發(fā)現(xiàn)業(yè)務(wù)中的問(wèn)題,跨端推進(jìn)解決,這是最好的出路。 showImg(https://segmentfault.com/img/remote/1460000019038442); 【阿里云 TXD 前端月刊】- 熱門前端技術(shù)快報(bào),聚焦業(yè)界新視界;前端領(lǐng)域急速發(fā)展的節(jié)奏...
閱讀 2394·2021-09-30 09:47
閱讀 1379·2021-09-28 09:35
閱讀 3259·2021-09-22 15:57
閱讀 2501·2021-09-22 14:59
閱讀 3649·2021-09-07 10:25
閱讀 3082·2021-09-03 10:48
閱讀 3046·2021-08-26 14:14
閱讀 949·2019-08-30 15:55