摘要:隱式強制類型轉換隱式強制類型轉換指的是一些特殊的操作的副作用來實現類型轉換,而非和等函數來實現值的類型轉換。下面幾種情況會發生布爾值的強制類型轉換語句中的天健判斷表達式。
引言
來到北京已經有4個年頭了,做過一些測試、打雜、前端的工作之后,最后還是選擇了前端的工作。現階段主要還是在寫業務代碼,代碼質量,工作效率就顯得尤為重要。【學以致用】這個系列主要記錄一些平時工作、學習遇到的一些問題,方便以后查漏補缺。
value 顯示強制類型轉換最新的 ECMAScript 標準定義了 7 種數據類型:
6 種原始類型:
Boolean
Null
Undefined
Number
String
Symbol (ECMAScript 6 新定義)
和
Object
通常我們在工作的時候需要和后臺對接,函數在處理返回值的時候如果做了容錯判斷,把數據轉換成我們想要的類型,在編寫后續業務代碼的時候就會更加輕松 :-D
下圖是 《JavaScript權威指南》中關于類型轉換的總結:
舉個栗子:后臺返回值為一個字符串,內容是0 ~ 5的數字,現在使用的時候需要將參數轉化為數字類型。
// wrong return Number(value) // "" -> 0 // undefined -> NaN // "aaa" -> NaN // right 前面是剔除掉 "" undefined ,后面可以剔除掉 NaN 的類型 if (value && Number(value) >= 0) { return Number(value); } else { return null; }
關于值的比較,當我們只關心值是否正常時,還有一個比較靠譜的方法:正則表達式,上面的例子也可以這樣來寫:
if (/[0-5]/.test(value)) { return Number(value); } else { return null; }
小結:在判斷兩個值是否相等時,最好顯式的轉化,讓代碼更加清晰易讀,然后用全等運算符 === 或者 !== 來比較。
隱式強制類型轉換隱式強制類型轉換指的是一些特殊的操作的副作用來實現類型轉換,而非 Number() 和 String() 等函數來實現值的類型轉換。隱式強制類型轉換通常會使代碼更加簡潔,但同時也增加了代碼的理解難度,我們編寫的代碼大都是給別人看的,要考慮到大家的理解是否保持一致。
數字和字符串的轉換,個人習慣是使用顯示的轉換,這里不再贅述。
ToBoolean下面幾種情況會發生布爾值的強制類型轉換:
if (..) 語句中的天健判斷表達式。
for (.. ; .. ; ..) 語句中的條件判斷表達式。
while (..) 循環中的條件判斷表達式。
? : 中的條件判斷表達式
|| 和 && 的做操作數
而 switch 語句使用的是全等判斷,不會發生隱式的強制轉換。
轉換的結果可以參照上面的表格,或者下面的鏈接
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/103513.html
摘要:下面分幾步來簡單的探探不同類型的轉換吧以下的內容,都可以從權威指南中找到。其他值轉換成在編寫代碼的過程中,幾乎不用考慮它的取值類型。核心內置類,會嘗試先于可以理解為對象優先轉換成數字例外的是,利用的是轉換。 最近在寫公司的登錄注冊模塊,遇到類型不同相比較的時候,就心驚膽戰,每次都要用瀏覽器來驗證一下,決定亂七八糟的隨便寫一下,方便日后自己回顧知識~ 弱類型帶來的那些讓人迷糊的事 弱類型...
摘要:聲明變量并初始化值為原始類型,一般稱之為字面量方式定義變量,或直接量方式定義變量。浮點類型表示包含小數部分。浮點類型所占的空間是整數類型的兩倍。 原始類型 原始類型,又稱原始值,是直接代表JavaScript語言實現的最底層數據。原始類型分為 boolean類型、number類型、string類型三種。聲明變量并初始化值為原始類型,一般稱之為字面量方式定義變量,或直接量方式定義變量。 ...
摘要:第十七天筆記類型轉換隱式類型轉換隱式類型轉換是弱類型松散類型的在任何情況下都可以強制轉換定義類型類型以及類型的變量臥龍前端轉換為類型轉換為類型類型轉換為類型如果文本內容是普通的文本非數字轉換后的結果為如果文本內容是數字值轉換后的結果為對 第十七天筆記 類型轉換 隱式類型轉換 隱式類型轉換 JavaScript是弱類型/松散類型的 在任何情況下都可以強制轉換 //定義number類型 s...
摘要:返回布爾值,表示參數字符串是否在原字符串的頭部。布爾值中布爾值有兩個和和都表示值的空缺,但事從背后更深遠的角度考慮,他們的還是有差別的。首先我們來看一下類型轉化表任意的值都可以轉換為布爾值,只有會被轉換為,其他所有值都會被轉換成。 開辟了一個關于javascript的基礎系列,更加深入、細致的了解這門語言。今天分享的是js的數據類型。 javascript的數據類型可以分為兩類:原始類...
摘要:基本值原始值原始的布爾類型有兩個值和。創建布爾值的方式直接用字面量用函數,將其他任意值轉換成對應的原始布爾值。使用兩次非運算符,將其轉換成對應的布爾類型。下面來看一些將其他類型轉換成布爾類型的例子。 基本值(原始值) 原始的布爾類型boolean有兩個值: false 和 true。 > typeof false boolean > typeof true boolean 創建布爾值的...
閱讀 3279·2021-11-18 10:02
閱讀 3446·2021-10-11 10:58
閱讀 3379·2021-09-24 09:47
閱讀 1124·2021-09-22 15:21
閱讀 3938·2021-09-10 11:10
閱讀 3281·2021-09-03 10:28
閱讀 1751·2019-08-30 15:45
閱讀 2143·2019-08-30 14:22