1. IE8下(可能还有别的浏览器)的数组对象不支持indexOf(..)方法
2. IE8下(可能还有别的浏览器)的字符串的substr(..)方法不支持从结尾计算,如: “abcd”.substr(-2) ; 在IE8下是 abcd, 在其它浏览器下为: cd
在给几个面试题:
1.
1 2 3 4 5 6 7 |
if (1) { function a() {} }else{ function b() {} } alert(a); alert(b); // 有些浏览器上能找见b,有些浏览器上找不见b |
或者
1 2 3 4 5 6 7 8 |
alert(a); // My God ,这也能找见 alert(b); if (1) { function a() {} }else{ function b() {} } |
2.
1 2 3 4 5 |
var i = 1; function func() { alert(i); // 这里的i到底是几? var i = 2; } |
结果: i没有被定义
梁栋说,http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf 里面有介绍