成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一覺醒來,發(fā)現(xiàn) Try catch 要被淘汰了?

開發(fā) 前端
剛剛上面??=?后面都是跟著 JavaScript 自帶的方法,如果你想要讓自己寫的代碼也能享受??=,那么你需要用到?Symbol.result,因?yàn)楫?dāng)??=?后面需要接一個(gè)對(duì)象(可以直接是對(duì)象,也可以是函數(shù)返回對(duì)象),會(huì)自動(dòng)去調(diào)用這個(gè)對(duì)象身上的?Symbol.result?方法。

相信大部分前端朋友都在項(xiàng)目中使用過 try catch 去編寫過代碼,其實(shí)它的最大作用就是 兜底,就比如下面的代碼,我想要在請(qǐng)求之后,保證頁面的正常展示不崩,那么我就得兜底:

  • 確保請(qǐng)求報(bào)錯(cuò)之后,頁面正常展示
  • 確保請(qǐng)求到的數(shù)據(jù)是一個(gè)數(shù)組格式

那么我可以使用 try catch 這么去編寫這一個(gè)請(qǐng)求,這樣就能確保無論是請(qǐng)求失敗與否,返回的數(shù)據(jù)符合預(yù)期與否,都不會(huì)造成頁面的崩掉。

圖片

或者我們平時(shí)使用的很多的 JSON.parse,這個(gè)方法報(bào)錯(cuò)率也是很高的,所以一般也都會(huì)做 兜底,防止因?yàn)榇隋e(cuò)誤導(dǎo)致頁面崩掉。

圖片

ECMAScript 新提案

安全賦值運(yùn)算符 ?=

最近 ECMAScript 引入了一個(gè)新的提案:proposal-safe-assignment-operator,中文翻譯為 安全賦值運(yùn)算符,代碼中是 ?=。

它通過將函數(shù)的結(jié)果轉(zhuǎn)換為一個(gè)數(shù)組來處理錯(cuò)誤:

  • 如果函數(shù)拋出錯(cuò)誤,則運(yùn)算符返回[error, null]
  • 如果函數(shù)成功執(zhí)行,則返回[null, result]

還是以剛剛兩個(gè)代碼例子來說

圖片圖片

圖片圖片

可以看出比原本的代碼更加清晰簡(jiǎn)潔。

很多人會(huì)問,為啥要將 error 放前面,而 result 放后面呢?

其實(shí)很好理解,因?yàn)椴⒉皇撬泻瘮?shù)執(zhí)行都會(huì)有返回結(jié)果的,換句話說:error是客觀存在的,result是主觀存在的,所以 error 放前面更方便,代碼判斷起來更加舒服。

Symbol.result

剛剛上面 ?= 后面都是跟著 JavaScript 自帶的方法,如果你想要讓自己寫的代碼也能享受 ?=,那么你需要用到 Symbol.result,因?yàn)楫?dāng) ?= 后面需要接一個(gè)對(duì)象(可以直接是對(duì)象,也可以是函數(shù)返回對(duì)象),會(huì)自動(dòng)去調(diào)用這個(gè)對(duì)象身上的 Symbol.result 方法。

圖片圖片

圖片圖片

遞歸處理

如下代碼,如果 ?= 處理后返回的 result 中又有 Symbol.result 的話,?= 會(huì)繼續(xù)處理這個(gè) result ,直到所有 Symbol.result 被處理完成,或者遇到報(bào)錯(cuò)。

圖片圖片

Promise

?= 天然支持處理 Promise,不需要自己去返回 Symbol.result。

圖片 圖片

責(zé)任編輯:武曉燕 來源: 前端之神
相關(guān)推薦

2017-05-19 15:26:20

AndroidKotlin代碼

2015-11-16 11:24:44

流量提速降費(fèi)運(yùn)營(yíng)商

2021-11-23 15:35:01

程序員Rust開發(fā)者

2020-02-09 16:52:02

睡醒公司倒閉

2015-04-23 09:29:05

iOSpython

2015-04-23 10:51:13

iOSpython

2024-07-16 13:20:59

2025-05-13 09:07:47

PromiseAPI靜態(tài)

2021-03-30 08:52:35

微信新功能移動(dòng)應(yīng)用

2022-05-26 14:04:13

GPT-3機(jī)器學(xué)習(xí)AI

2020-06-15 08:12:51

try catch代碼處理器

2024-12-05 13:43:12

Genie 2OpenAI模型

2021-06-08 14:57:09

SATA機(jī)械硬盤

2019-12-20 09:32:02

人工智能程序員軟件

2019-06-03 09:01:09

iTunes蘋果音樂

2024-01-23 11:28:14

Eslint前端Oxlint

2018-07-27 05:13:35

運(yùn)營(yíng)商中國(guó)移動(dòng)網(wǎng)絡(luò)

2025-05-08 11:16:50

2010-10-28 10:30:16

云計(jì)算關(guān)系數(shù)據(jù)庫

2025-02-12 12:00:00

前端try-catchJavaScrip
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 午夜欧美一区二区三区在线播放 | 国产九九九九 | 亚洲国产成人av好男人在线观看 | 成人网址在线观看 | h网站在线观看 | 国产精品欧美一区二区三区 | www.伊人.com| 国产精品无码专区在线观看 | 欧美精品一区二区三区在线 | 在线视频中文字幕 | 性色av一区二区三区 | av在线视| 久久精品一区二区 | 国产精品区二区三区日本 | 爱综合| 精品久久一区 | se婷婷| 日韩视频精品在线 | 精品国产欧美一区二区三区成人 | av网站在线看 | 精品三级在线观看 | 精品一区二区三区四区外站 | 永久看片 | 美女二区 | 羞羞视频网站免费观看 | 在线观看免费黄色片 | 久久久xxx | 91精品国产综合久久国产大片 | 国产视频二区 | 亚洲久久一区 | 日韩精品免费在线观看 | 婷婷久 | 国产精品小视频在线观看 | 免费看av大片 | 干干干操操操 | www.色五月.com | 国产精品久久久久久久久久免费看 | 免费观看黄色片视频 | 亚洲一区国产精品 | 美女视频一区 | 欧洲精品在线观看 |