類型轉換
在開發中,你有沒有遇見一種情況
let obj={displayNum:""
}
obj.displayNum=“123”;
let num:number =123
console.log(num==obj.displayNum) //false
我們想要的結果,是結果為true;那么這時候就要用到類型轉換
- 將其他類型轉換為布爾類型
let m: string ='123'
let mb:boolean = Boolean(m) ;// true
Boolean()函數會判斷傳入的值是空值,還是非空值;除了5種情況,其余的返回的都是true
1. undefined
2. null
3. NaN
4. 0
5. “”
Boolean(undefined) //false
Boolean(123) //true
Boolean("") //false
-
將其他類型轉換為數值類型
- parseInt()
將字符串類型的值轉換為整型數值
parseInt(" 1") //1 parseInt("1") //1 parseInt("3.14") //3 parseInt("1zz") //1 parseInt("z1") //NaN
看上面的代碼,可以知道,使用parseInt()函數時,需要注意的幾點。
在轉換時會忽略前面的空格,會從第一個非空字符串開始解析,直到遇見非數字字符,會忽略非數字字符及之后的所有字符;
在轉換時會忽略小數點后的數值- pareseFloat()
將字符串類型的值轉換為浮點型數值
pareseFloat(" 1。1") //1.1 pareseFloat("1.1") //1.1 pareseFloat("3.14.15") //3.14 pareseFloat("1zz") //1 pareseFloat("z1") //NaN
看上面的代碼,可以知道,使用pareseFloat()函數時,需要注意的幾點。
在轉換時會忽略前面的空格,會從第一個非空字符串開始解析,直到遇見非數字字符,會忽略非數字字符及之后的所有字符;
在轉換時會忽略第二個小數點后的數值- Number()
將任意類型的值轉換為數值類型的值;Number()的轉換大致和parseInt()和 parseFloat()一樣;但是對與轉換的內容中包含 非數字,只會得到NaN;所以如果判斷一個字符串是否時純數字的時候 可以使用Number();
Number(" 1。1") //1.1
Number(“1.1”) //1.1
Number(“3.14.15”) //3.14
Number(“1zz”) //NaN
Number(“z1”) //NaN - parseInt()
-
將其他類型轉換為字符串類型
可以使用兩種方式可以將其他類型的值轉換為字符串類型- 通過String()構造函數產生新的字符串
如果使用String()會產生新的字符串。 - 通過調用其他類型的toString()方法來進行轉換
- 通過String()構造函數產生新的字符串