今天项目中遇到个问题。
需求:需要在文本域中限制用户输入的字符长度。
实现原理:中文,全角字符算作两个字符,除此之外其他字符算作一个字符。在遍历字符串中的每个元素时用的是数组下标方式,示例如下:
var str = "测试文字123";
for(var i=0,len = str.length; i<len;i++){
........
str[i].mach.....;
........
}
症状:在ie7和ie6中抛出str[i]未定义或者为null或undefined。
修改方案:使用charAt,具体代码如下:
var str = "测试文字123";
for(var i=0,len = str.length; i<len;i++){
........
str.charAt(i).mach.....;
........
}