pwn-[XMAN]level5
阿新 • • 發佈:2020-11-05
技術標籤:javascriptjavascript
判斷一個值是否為陣列
1、陣列自帶方法 Array.isArray(arr);//返回true或false
2、判斷該變數的建構函式是否為Array
3、通過Object.prototype.toString判斷
Object.prototype.toString.call(o) === ‘[object Array]’; //true
4、通過instanceof判斷
5、用jQuery的方法判斷($.isArray(arr))
判斷值是否為物件
1、toString() 第一選擇
let obj = {} Object.prototype.toString.call(obj) === ‘[Object Object]‘
2、constructor
let obj = {} obj.constructor === Object
3、instanceof
注意:使用instanceof對陣列進行判斷也是物件
let obj = {} obj instanceof Object //true let arr = [] arr instanceof Object //true
4、typeof
let obj = {} typeof obj === Object // 根據typeof判斷物件也不太準確 表示式 返回值 typeof undefined ‘undefined‘ typeof null ‘object‘ typeof true ‘boolean‘ typeof 123 ‘number‘ typeof "abc" ‘string‘ typeof function() {} ‘function‘ typeof {} ‘object‘ typeof [] ‘object‘
js中判斷物件是否為空
1.es6中可以使用Object.keys(obj)
var data = {};
var arr = Object.keys(data);
alert(arr.length == 0); //true 為空, false 不為空
2.將json物件轉化為json字串,再判斷該字串是否為"{}"
var data = {};
var b = (JSON.stringify(data) == "{}");
alert(b); //true 為空, false 不為空