以下脚本为字符串中的每个字符将 undefined 打印到控制台,但在 Chrome 中可以正常工作。
<script>
function main()
{
var x = "hello world";
for ( var i = 0; i < x.length; ++i ) {
console.log( x[i] );
}
}
main();
</script>
我是否必须对数组做些什么才能让它在所有浏览器中正常工作?
最佳答案
部分浏览器支持[]
:
Array-like character access (the second way above) is not part of ECMAScript 3. It is a JavaScript and ECMAScript 5 feature.
为获得最大兼容性,请使用 String.charAt()
相反:
<script>
function main()
{
var x = "hello world";
for ( var i = 0; i < x.length; ++i ) {
console.log( x.charAt(i) );
}
}
main();
</script>
关于Internet Explorer 中的 JavaScript 数组索引 'undefined',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14070442/