所有物件都會從它的原型上繼承乙個constructor
屬性。
const arr =
;console.
log(arr.constructor === array)
;// true
const obj =
;console.
log(obj.constructor === object)
;// true
const num =1;
console.
log(num.constructor === number)
;// true
const str =
'1';
console.
log(str.constructor === string)
;// true
const bool =
true
;console.
log(bool.constructor === boolean)
;// true
const nul =
null
;// console.log(nul.constructor); // 報錯:uncaught typeerror: cannot read property 'constructor' of null at :1:5
const undefin = undefined;
// console.log(undefin.constructor); // 報錯:uncaught typeerror: cannot read property 'constructor' of null at :1:5
本次我們了解的,是通過constructor
來判斷某個資料的型別:
在這篇文章中,我們會通過typeof
、instanceof
、constructor
以及object.prototype.tostring().call()
這四個方法,講解這些方法判斷資料型別的情況。
判斷資料型別
typeof 如果使用typeof來判斷資料型別的話,結果如下 var num new number 123 var str new string 1223 var bool new boolean false console.log typeof 123,number typeof num,obj...
判斷資料型別
typeof 判斷基本資料型別 不能區分null object 弊端不能區分 陣列 物件 和 null console.log typeof dddd console.log typeof 12 console.log typeof true console.log typeof undefined...
資料型別判斷
可以判斷基本資料型別,它返回的資料型別的字串 返回結果只能包括number,boolean,string,function,object,undefined 但不能判斷null array,可以使用typeof判斷變數是否存在 如if typeof a undefined 但是對於一些建立的物件,它...