var str = "abc"; alert(str.substr(-1, 1));
这段代码在IE和Chrome下的结果是不同的,希望得到的是c,Chrome下表现正常;但跑到IE下,显示abc,不是期望的结果。看来IE在处理substr()第一个参数为负数的情况处理方式不一样。
改用substring()函数代替substr()
var str = "abc"; var len = str.length; alert(str.substring(len - 1, len));
参考文章:
Using Slice(), Substring(), And Substr() In Javascript
Javascript: substr() v.s. substring()(需要FQ)
本文探讨了JavaScript中substr与substring函数的区别,特别是在IE浏览器中substr函数处理负数参数时的行为差异,并提供了一种解决方法。

134

被折叠的 条评论
为什么被折叠?



