https://my.oschina.net/ohcoding/blog/470952?p=1spa
var a = ['hello','world']; console.log(typeof a); // object console.log(a.toString()); // hello,word 字符串 console.log(Object.prototype.toString.call(a)); //[object Array] var b = {'hello':'world'}; console.log(typeof b); // object console.log(b.toString()); // [object Object] console.log(Object.prototype.toString.call(b));// [object Object]
1. Array 和 Object 的typeof 結果都是 object.net
2. toString() Array的結果是真的字符串,而Object的結果是固定的[object Object]prototype
3. 經過Object.prototype.toString調用,Array的結果返回固定[object Array],Object的結果依然是[object Object]code
ES2005 新方法 blog
console.log( Array.isArray(a) ); // true console.log( Array.isArray(b) ); // false