Internet Explorer 中的 JavaScript 数组索引 'undefined'

标签 javascript internet-explorer google-chrome

以下脚本为字符串中的每个字符将 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/

相关文章:

javascript - 在 Chrome 扩展中实现 Pusher

javascript - 对于循环闭合

javascript - vuejs filter is not a function 报错

java - 如何检查通过某个接口(interface)地址的互联网是否可用?

html - 兼容性 View 及其重要性

css - 在列表中 float 会导致 IE6 和 IE7 出现问题

javascript - 无法从 jquery 函数在文本区域中添加 ###Name###

html - 将表格列的宽度设置为在其下方行的内容宽度处达到最大值

javascript - Chrome - 专注于输入不起作用

google-chrome - 来自基于 OWIN 的 WebAPI 的飞行前选项 CORS token 请求出现 400 错误