本文主要介紹一些 JS 中用到的小技巧,可以在日常 Coding 中提升幸福度。接下來就由石家莊網(wǎng)站建設(shè)工程師詳細的講解一下。

1 string 強制轉(zhuǎn)換為數(shù)字
可以用 *1來轉(zhuǎn)化為數(shù)字(實際上是調(diào)用 .valueOf方法)。
然后使用 Number.isNaN 來判斷是否為 NaN,或者使用 a!==a 來判斷是否為 NaN,因為 NaN!==NaN。

常用: 也可以使用 + 來轉(zhuǎn)化字符串為數(shù)字。

2 object強制轉(zhuǎn)化為string
可以使用 字符串+Object 的方式來轉(zhuǎn)化對象為字符串(實際上是調(diào)用 .toString() 方法)。

對象通過 valueOf 方法強制轉(zhuǎn)換為數(shù)字,通過 toString 方法強制轉(zhuǎn)換為字符串。

3 使用 Boolean 過濾數(shù)組中的所有假值
我們知道 JS 中有一些假值:false, null, 0, "", undefined, NaN,怎樣把數(shù)組中的假值快速過濾呢?可以使用 Boolean 構(gòu)造函數(shù)來進行一次轉(zhuǎn)換。

4 雙位運算符 ~~
可以使用雙位操作符來替代正數(shù)的 Math.floor(),替代負數(shù)的 Math.ceil()。雙否定位操作符的優(yōu)勢在于它執(zhí)行相同的操作運行速度更快。

不過要注意,對正數(shù)來說 ~~ 運算結(jié)果與 Math.floor() 運算結(jié)果相同,而對于負數(shù)來說與 Math.ceil()的運算結(jié)果相同:

5 短路運算符
我們知道邏輯與 && 與邏輯或 || 是短路運算符,短路運算符就是從左到右的運算中前者滿足要求,就不再執(zhí)行后者了;
可以理解為:
&& 為取假運算,從左到右依次判斷,如果遇到一個假值,就返回假值,以后不再執(zhí)行,否則返回最后一個真值。
|| 為取真運算,從左到右依次判斷,如果遇到一個真值,就返回真值,以后不再執(zhí)行,否則返回最后一個假值。


因此可以用來做很多有意思的事,比如給變量賦初值:

如果 variable1 是真值就直接返回了,后面短路就不會被返回了,如果為假值,則會返回后面的 foo。
也可以用來進行簡單的判斷,取代冗長的 if 語句:

如果 param 為真值則返回 param.prop 屬性,否則返回 param 這個假值,這樣在某些地方防止 param 為 undefined 的時候還取其屬性造成報錯。
以上關(guān)于js技巧分享屬石家莊網(wǎng)站建設(shè)工程師的個人觀點,大家如果對此有著不同的見解,可以關(guān)注公眾號“尚武科技派”給我留言,大家可以交流一下自己的心得體會,共同學(xué)習進步。