国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

一點(diǎn)有意思的分享

2023-04-17 23:01 作者:BlueSky234  | 我要投稿

今天刷視頻看到一個(gè)逆天代碼。

大致是這樣的,于是有人說(shuō),你為什么不寫(xiě)成“user || null?”呢?這是一個(gè)很有意思的思考。在編寫(xiě)代碼和簡(jiǎn)化的時(shí)候,一定要注意代碼的等效。即兩段不同的代碼在無(wú)論輸入任何值時(shí),都有相同的結(jié)果,這樣的代碼才是等效的。簡(jiǎn)化代碼時(shí),如果不考慮等效就有可能出各種BUG。比如上例:

在JS中,當(dāng)變量的值是 false, 0, "", null undifined, document.all 中的任何一個(gè)時(shí),都會(huì)被視為false,這個(gè)也就是所謂的falsy。而原代碼要求的判斷條件是 不為null 。這個(gè)絕對(duì)不可以簡(jiǎn)寫(xiě)為 if (!user) 這是不相同的判斷條件。在這里,空字符串和0有可能根據(jù)需求有其它含義。

另外,有人說(shuō)三元運(yùn)算符的可讀性不好,其實(shí)這個(gè)也有問(wèn)題。三元運(yùn)算符的效率和if語(yǔ)句是不一樣的:


多次執(zhí)行此程序,要以看出三元運(yùn)算符通常會(huì)比if語(yǔ)句要快一些。當(dāng)然,對(duì)于JS程序,這種效率優(yōu)化完全沒(méi)有任何意義,有些弱智的編譯器還會(huì)幫你優(yōu)化。但了解這個(gè)知識(shí),我認(rèn)為是沒(méi)有問(wèn)題的。而且說(shuō),三元運(yùn)算符所在的語(yǔ)句是表達(dá)式語(yǔ)句,他有一個(gè)結(jié)果。而if所在的語(yǔ)句是控制語(yǔ)句,他只負(fù)責(zé)流程,所以,二者的作用不相同,目的不相同,也沒(méi)有放在一起比較的必要。例如本例,使用三元運(yùn)算符即精簡(jiǎn)代碼,又符合三元運(yùn)算符本身的含義,自然是推薦使用的。

一點(diǎn)有意思的分享的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
永州市| 日土县| 璧山县| 皋兰县| 勐海县| 冷水江市| 浦城县| 师宗县| 廉江市| 平乡县| 玉屏| 合作市| 常熟市| 南昌市| 寻乌县| 新泰市| 襄垣县| 荣昌县| 清水县| 广昌县| 永嘉县| 通榆县| 菏泽市| 米脂县| 祁门县| 沁阳市| 洛川县| 连江县| 左权县| 伊金霍洛旗| 康马县| 呼伦贝尔市| 随州市| 高雄市| 图们市| 探索| 扬州市| 奎屯市| 岢岚县| 灵武市| 古蔺县|