let a = [1,2,3,4,5,6];
let b = [,,
,];let c = 123;
let d = 'www';
let e = ;
array.isarray()能判斷乙個元素是否為陣列,如果是就返回true,否則就返回false
console.log(array.isarray(a)); // true
console.log(array.isarray(b)); // true
console.log(array.isarray(c)); // false
console.log(array.isarray(d)); // false
console.log(array.isarray(e)); // false
instanceof運算子用於檢測某個例項是否屬於某個物件原型鏈中
console.log(a instanceof array); // true
console.log(b instanceof array); // true
console.log(c instanceof array); // false
console.log(d instanceof array); // false
console.log(e instanceof array); // false
還可以用於判斷物件
console.log(e instanceof object); // true
判斷是否為陣列就是檢測arrray.prototype屬性是否存在於變數陣列(a,b)的原型鏈上,顯然a,b為陣列,擁有arrray.prototype屬性,所以為true
obiect的每個例項都有建構函式constructor,儲存著建立每個物件的函式
以下包含判斷其它的資料型別驗證
console.log(c.constructor === number); // true
console.log(d.constructor === string); // true
console.log(e.constructor === object); // true
通過原型鏈查詢呼叫
console.log(object.prototype.tostring.call(a) === '[object array]'); // true
console.log(object.prototype.tostring.call(b) === '[object array]'); // true
以下包含判斷其它的資料型別驗證
console.log(object.prototype.tostring.call(c) === '[object number]'); // true
console.log(object.prototype.tostring.call(d) === '[object string]'); // true
console.log(object.prototype.tostring.call(e) === '[object object]'); // true
array.prototype屬性為array的建構函式原型,裡面包含有乙個方法isprototypeof()
用於測試乙個物件是否存在於另乙個物件的原型鏈上。
console.log(array.prototype.isprototypeof(a)); // true
console.log(array.prototype.isprototypeof(b)); // true
console.log(array.prototype.isprototypeof(c)); // false
console.log(array.prototype.isprototypeof(d)); // false
console.log(array.prototype.isprototypeof(e)); // false
js判斷是否為陣列
var array 1,2,3 console.log array instanceof array 父子頁面陣列賦值,可能無效 console.log array.constructor array 父子頁面陣列賦值,可能無效 console.log array.proto constructor...
js判斷變數型別是否為陣列
判斷變數的型別是最經常使用的方法,但是判斷的方式有很多。1.typeof var ary 1,2,3,4 console.log typeof ary 輸出 object 很明顯,typeof只能檢測基本資料型別,並不能檢測出來是否為陣列。2.instanceof var ary 1,2,3,4 c...
js判斷變數型別是否為陣列
判斷變數的型別是最經常使用的方法,但是判斷的方式有很多。1.typeof var ary 1,2,3,4 console.log typeof ary 輸出 object 很明顯,typeof只能檢測基本資料型別,並不能檢測出來是否為陣列。2.instanceof var ary 1,2,3,4 c...