Strings, JavaScript & IE

if u r familiar with Javascript can u tell what will be the output of these lines ?

var src="abcd";
var dest="";
for (var i=0;i<4;i++)
{
          dest+=src[i];
}
alert(dest);

well, it's obvious that this fragment will produce a message box holding the string "abcd" unless u r used to code Javascript for IE in Firefox or Chrome it works like a charm {C}

but in Internet Explorer  -i think till IE 7, i didn't test it with 8- that will produce "undefinedundefinedundefinedundefined" so why is that ?!!!! that is simply because in IE u cant index char in a string using square brackets so u can not use "src[i]" but instead u use src.charAt(i) so the fragment would be

var src="abcd";
var dest="";
for (var i=0;i<4;i++)
{
          dest+=src.charAt(i);
}
alert(dest);

and that works fine with the rest of the browsers i did not look for that in the ECMAscript standard but that thing in IE sucks

thanks Jaqoup :D :D