Quoting Crockford in JavaScript The Good Parts:
We can ... define our own is_array function:
var is_array = function (value) {
return value && typeof value === 'object' && value.constructor === Array;
}
Unfortunately, it fails to identify arrays that were constructed in a different Windows or frame.
And then he doesn't explain why. So! Why?