眾所周知js的資料型別原來有七種,es2020 引入了一種新的資料型別 bigint(大整數),所以共有8種
/**5個基本**/console.log(typeof 'str') // > string
console.log(typeof 1) // > number
console.log(typeof true) // > boolean
console.log(typeof symbol()) // > symbol
console.log(typeof 123n) // > bigint
/**2個空**/
/*undefined未定義,變數不存在或者變數定義後沒賦值*/
console.log(typeof undefined) // > undefined
/*null*/存在變數,但是值被賦予了null(空)
console.log(typeof null) // > object
/**物件型別**/
console.log(typeof {}) // > object
console.log(typeof ) // > object
console.log(typeof function(){}) // > function
可以看到,對於5個基本型別和undefined使用時效果正常,其他都效果不佳。
let [string,
number,
boolean,
symbol,
bigint,
unde,
nu,object,
array,
fun
] =
['string',
1,true,
symbol(),
123n,
undefined,
null,
{},,
function(){}]
let value = [string,number,boolean,symbol,bigint,unde,nu,object,array,fun]
value.foreach((ele) => )
// [object string]
// [object number]
// [object boolean]
// [object symbol]
// [object bigint]
// [object undefined]
// [object null]
// [object object]
// [object array]
// [object function]
我們可以看到,object.prototype.tostring.call()的方法返回的字串可以穩定的得出是何種資料型別。
console.log(object instanceof object)console.log(fun instanceof function)
console.log(array instanceof array)
// 都為true
只能用於物件型別的判斷
console.log(array.constructor === array) // trueconsole.log(object.constructor === object) // true
console.log(fun.constructor === function) // true
也可以對date日期等型別使用。
js判斷資料型別
1 typeof 形如 var x xx typeof x string 返回型別有 undefined string number boolean function object 缺點 對於object型別不能細分是什麼型別 優點 對空null的判斷 undefined 的應用 2 instanc...
js判斷資料型別
了解js的都知道,有個typeof 用來判斷各種資料型別,有兩種寫法 typeof typeof 如下例項 typeof 2 輸出 number typeof null 輸出 object typeof 輸出 object typeof 輸出 object typeof function 輸出 fu...
js判斷資料型別
1 判斷是否為陣列型別 2 判斷是否為字串型別 3 判斷是否為數值型別 isnan 變數 如果為true就是數字型別 注意這個函式一般針對數字型別來判斷是否值為nan,若變數為非數字型別,則先轉化為數字型別再做判斷,用此函式時,別忘考慮空串和空格 這倆轉化為數字是0 4 判斷是否為日期型別 5 判斷...