js中基礎的數據類型詳解
六種數據類
數據類型指的是字面類型 在JS中有六種數據類型 String 字符串 Number 數值 Boolean 佈爾值 Null 空值 Undefined 未定義 Object 對象 其中String、Number、Boolean、Null、Undefined 屬於基本數據類型 Object 屬於引用數據類型
1、String
/* String字符串 -在JS中字符串需要使用引號起來 -使用雙引號或者單引號都可以,但是不要混用 -引號不能嵌套,雙引號裡面不能放雙引號,單引號不能放單引號 單引號裡面可以放雙引號 */ var str="hello"; str ='我說:"今天心情好!"'; /* 在字符串中我們可以使用\作為轉義符, 當表示一些特殊符號時可以可以使用\進行轉義 \" 表示" \' 表示' \n 表示換行 \t 制表符 \\ 表示\ 加上雙引號表示字符串,不加雙引號表示變量 */ document.write(str)
2、Number
/* 在JS中所有的數值都是NUmber類型, 包括整數和浮點數(小數) JS中可以表示的數字最大值 -Number.MAX_VALUE -1.7976931348623157e+308 超過最大值,則返回一個Infinity Infinity 正無窮 -Infinity 負無窮 使用typeof檢查Infinity也會返回Number NAN 是一個特殊的數字,表示Not A Number 使用typeof檢查一個NaN也會返回number */ // 數字123 var a=123; // 字符串123 var b="123"; /* 可以使用一個運算符typeof 來檢查一個變量的類型 語法:typeof變量 檢查字符串時,會返回string 檢查數值時,會返回number */ // console.log(typeof b); /* a =Number.MAX_VALUE*Number.MAX_VALUE; a =Infinity console.log(typeof a); */ a =-Number.MAX_VALUE*Number.MAX_VALUE; a ="abc"*"bcd" console.log(typeof a); var c=123456 + 789456; console.log(c)
3、Boolean
/* Boolean佈爾值 佈爾值隻有兩個,主要用來邏輯判斷 true 表示真 false 表示假 */ var bool=false; console.log(typeof bool); console.log(bool);
4、Null和undefined
/* Null類型的值隻有一個,就是null null這個值專門表示空的對象 使用typeof檢查一個null,會返回object undefined(未定義)類型隻有一個,就undefind 當聲明一個變量,但是並不給變量賦值時,它的值就是undefind 使用typeof檢查一個undefind時也會返回undefind */ var a=null; console.log(typeof a);//返回object var b; console.log(b) console.log(typeof b)
5、強制類型轉換
/* 強制類型轉換 -指將一個數據類型強制轉換為其他的數據類型 -類型轉換主要指,將其他的數據類型轉換為 String number boolean */ /* 一: 將其他的數據類型轉換為String 1:調用被轉換數據類型的toString()方法 2:該方法不會影響到原變量,它會將轉換的結果返回 3:但是註意:null和undefined這兩個值沒有toString 如果調用他們的方法,會報錯 二: 1:調用String()函數,並將被轉換的數據作為參數傳遞給函數 2:使用String()函數做強制類型轉換時, 對於Number和Boolean實際上就是調用的toString()方法 但是對於null和undefined,就不會調用toString()方法 它會將null,直接轉換為"null" 將undefined直接轉換為"undefined" */ var a=123; //調用a的string()方法 //調用xxx的方法yyy()方法,就是xxx.yyy() a=a.toString(); a=true; a=a.toString(); a=null; //a=a.toString();//報錯 a=undefined; //a=a.toString();//報錯 a=123; //調用String()函數,來將a轉換為字符串 a=String(a); a=undefined; a=String(a) console.log(typeof a); console.log(a);
6、將其他的數據類型轉換為Number
/* 將其他的數據類型轉換為Number 轉換方式一:使用Number()函數 字符串轉---數字 1:如果是純數字的字符串,則直接將其轉換為數字 2:如果字符串有非數字的內容,則轉換為NaN 3:如果字符串時一個空串或者是一個全是空格的字符串,則為0; 佈爾--》數字 true 轉換 1 false轉換 0 Null--》數字--0 undefined-->數字--NaN 轉換方式二: 這種方式專門用來對付字符串 parseInt()把一個字符串轉換為一個整數 parseFloat()把一個字符串轉換為一個浮點數 */ var a= "123"; //調用Number()函數來將a轉換為Number類型 a = Number(a); a = false; a = Number(a); a =null; a = Number(a); a = undefined; a = Number(a); a = "123.789px"; //調用parseInt()函數轉換為Number /* parseInt()可以將一個字符串中整數的內容去出來, 然後轉換為Number */ a = parseInt(a); // parseFloat()作用和parseInt()類似,不同的是它可以獲得有效的小數 a = "123.789.456px"; a = parseFloat(a); /* 如果對非String使用parseInt()或parseFloat() 它將先其轉換為String然後在操作 */ a = true; a = parseInt(a); a = 789.45; a = parseInt(a); console.log(typeof a); console.log(a);
7、將其他的數據類型轉換為Boolean
/* 將其他的數據類型轉換為Boolean 使用Boolean()函數 數字---->佈爾 除瞭0和NaN,其餘的都是true 字符串----》Boolean 除瞭空串,其餘的都是true null和undefined都會轉換為false 對象也會轉換為true */ var a = 123; //true a = -321; //true a = 0; //false a = Infinity;//true a = NaN; //false // 調用Boolean()函數轉換為佈爾值 a = Boolean(a); a = null; //false a = Boolean(a); a = undefined; //false a = Boolean(a); console.log(typeof a); console.log(a);
總結
本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!
推薦閱讀:
- 一篇文章讓你輕松記住js的隱式轉化
- ECMAScript 數據類型之Number類型
- 一篇文章帶你搞懂JavaScript的變量與數據類型
- JavaScript判斷是否為數字的幾種方式匯總(推薦!)
- 分享JavaScript 類型判斷的幾種方法