一段小代码
在IE8下面strt[index]为undefined
在FF3.6,Chromium4.0,Opera9.26和jsdb下均输出索引所在的字符
[url="http://www.jsdb.org/"]jsdb[/url]下把alert()函数改为println()函数,如下
而这样的写法
在IE和Opera下没有任何输出
在FF,C和jsdb下均可以正常遍历出字符
要想在所有情况下都能用的话,就只能用String的标准函数charAt()来代替str[i]
用常规索引的方式遍历
var strt = "alfa";
for(var index = 0, jk = strt.length; index < jk; index++) {
alert(index + "___" + strt[index]);
}在IE8下面strt[index]为undefined
在FF3.6,Chromium4.0,Opera9.26和jsdb下均输出索引所在的字符
[url="http://www.jsdb.org/"]jsdb[/url]下把alert()函数改为println()函数,如下
var strt = "alfa";
for(var index = 0, jk = strt.length; index < jk; index++) {
println(index + "___" + strt[index]);
}而这样的写法
var strb = "test";
for(var ii in strb) {
alert(ii + "___" + strb[ii]);
}在IE和Opera下没有任何输出
在FF,C和jsdb下均可以正常遍历出字符
var strb = "test";
for(var ii in strb) {
println(ii + "___" + strb[ii]);
}
要想在所有情况下都能用的话,就只能用String的标准函数charAt()来代替str[i]
用常规索引的方式遍历
var strt = "imok";
for(var index = 0, jk = strt.length; index < jk; index++) {
alert(index + "___" + strt.charAt(index));
}
本文探讨了使用不同方法遍历字符串在多种浏览器中的兼容性问题,并推荐使用标准的charAt()方法来确保跨平台的一致性。
1183

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



