/* 判断一个对象是不是数组*/<span style="background-color: rgb(255, 102, 102);">typeof</span>
var n=123;
console.log(typeof(n));
var b=true;
console.log(typeof(b));
var s="Hello";
console.log(typeof(s));
var fun=function(){};
console.log(typeof(fun));
var obj={};
console.log(typeof(obj));
var arr=[];
console.log(typeof(arr));var arr=[];//
var obj={};//原型都直接继承自Object.prototype
//obj.__proto__=arr;//让obj继承arr
/*<span style="background-color: rgb(255, 102, 102);">isPrototypeOf</span>
console.log(
Array.prototype.isPrototypeOf(obj)?"是数组":"不是数组"
);
*/
/*<span style="background-color: rgb(255, 102, 102);">instancof</span>
console.log(
obj instanceof Array?"是数组":"不是数组"
);
*/
/*<span style="background-color: rgb(255, 102, 102);">Object.prototype.toString</span>
console.log(obj.toString());//[object Object]
console.log(arr.toString());//元素内容,按逗号分隔
console.log(//arr对象要借用Object原型中的toString方法
Object.prototype.toString.call(obj)=="[object Array]"?
"是数组":"不是数组"
);
*/
/*<span style="background-color: rgb(255, 102, 102);">Array.isArray() ES5</span>
if(Array.isArray===undefined){
Array.isArray=function(obj){
//借用Object.prototype.toString检查当前对象是不是[object Array],直接返回结果
return Object.prototype.toString.call(obj)=="[object Array]";
}
}
//测试:
document.write(
Array.isArray(obj)?"是数组":"不是数组"
);