WTF, global \"item\" symbol in IE
Like any self-respecting Web UI developer, I have a lovingly cultivated hatred of Internet Explorer.
IE and I go way back -- I've been developing for IE since version 3, and I have a fairly well evolved sense of sense of what breaks there. So it's always an occasion for rejoicing when I trip over something strange and new.
Some recent code-refactoring breakage (I moved a code loop and left a variable undeclared, sweet!) unearthed this little gem: IE (both 6 and 7) seems to have a built-in global symbol called item .
It reports its type as 'string' , but appears to be an invokable function -- calling it with a random param passed yields the error: "Member not found":
alert(typeof item);
// Alerts 'string', expected 'undefined'
item(
'foo'
);
// Throws 'Member not found' error
I'd love it if someone could enlighten me -- WTF is this 'item' thing?
It looks like some kind of vestigial Active Scripting organ -- I did find a reference to a default item method of WshArguments in Windows Script Host , but nothing to explain, what, if anything it actually does in IE.
As a side note, IE6 is older than all my kids. And they're about to graduate college. Okay, not really -- the oldest is in first grade. But still.