Test-case: data:text/html,<!doctype html> <script> document.documentElement.textContent = NodeList.prototype; </script> Recent nightly, as well as Chrome 22 dev: [object Object] IE10 Developer Preview, Opera 12.50 internal: [object NodeListPrototype] Spec: """ The class string of an interface prototype object is the concatenation of the interface’s identifier and the string “Prototype”. """ http://dev.w3.org/2006/webapi/WebIDL/#interface-prototype-object I believe this was discussed on the W3C bug tracker at some point, and it was decided in favor of IE's behavior.
This causes a test failure at: http://w3c-test.org/webapps/DOMCore/tests/approved/interfaces.html which is already at dom/imptests/webapps/DOMCore/tests/approved/test_interfaces.html, so no new test should be needed. I'm happy to take this if someone points out where to look.
The NodeList case is the sInterfacePrototypeClass in js/xpconnect/src/dombindings.cpp For now. Until we switch NodeList to Paris bindings. I don't see an obvious tracking bug for this, but I assume once bug 788532 lands it's pretty straightforward. Peter, _do_ we have a tracking bug there? Note that this will not affect non-list-binding DOM interfaces, of course.
Works for XHR, with Paris bindings -- we get "[object XMLHttpRequestPrototype]".