Ali*_*iba 4 javascript arrays types prototype
obj.constructor === Array用于测试对象是否为此处建议的数组是否正确?是否总能返回与之兼容的正确答案Array.isArray?
取决于,有一些场景可以返回不同的值,但Array.isArray会起作用.
Array一个窗口的对象不是Array另一个窗口中的同一对象.
var obj = someIframe.contentWindow.someArray;
console.log(obj.constructor === Array);//false
console.log(Array.isArray(obj));//true
Run Code Online (Sandbox Code Playgroud)
该constructor属性可以被覆盖.
var obj = [];
obj.constructor = null;
console.log(obj.constructor === Array);//false
console.log(Array.isArray(obj));//true
Run Code Online (Sandbox Code Playgroud)
另一个对象也可以将constructor属性设置为Array.
var obj = {};
obj.constructor = Array;
console.log(obj.constructor === Array);//true
console.log(Array.isArray(obj));//false
Run Code Online (Sandbox Code Playgroud)