На свойстве ownerDocument сломается:
function isNode( obj ) {
var documentElement = ( obj ? obj.ownerDocument || obj : 0 ).documentElement;
return documentElement ? documentElement.nodeName === "HTML" : false;
}
alert(isNode({ownerDocument: document})) // true
Я в надежде, что всплывёт какой-нибудь трюк, типа:
Array.isArray = function (obj) {
return Object.prototype.toString.call(obj) == "[object Array]";
};