IE的Javascript问题

个人觉得,IE对Javascript的支持一直是最差的。即使是IE8也只支持ECMAScript 3.1,因此难免在解析Javascript时遇到一些问题。

示例一:

var n = 0.09;
alert(n.toFixed(1));

结果不会是0.1,而是0.0。

示例二:

var n = "08";
alert(parseInt(n));

结果不会是8,而是0。

示例三:

var obj = {valueOf:0, toString:1, foo:2};
var n = 0;
for (var p in obj) n++;
alert(n);

结果不会是3,而是1。

示例四:

var arr = [1,2,];
alert(arr.length)

结果不会是2,而是3。

示例五:

var text = "cat, bat, sat, fat";        
var p = /.at/;
alert(p.lastIndex);

结果不会是0,而是3。

还好,在IE9中已经解决了这些问题。

发表评论