首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IE9阵列不支持indexOf

IE9阵列不支持indexOf
EN

Stack Overflow用户
提问于 2011-10-17 18:05:08
回答 3查看 12.6K关注 0票数 9

基于http://ie.microsoft.com/testdrive/HTML5/ECMAScript5Array/Default.html,我认为IE9支持数组中的indexOf,但是下面的突破。知道为什么吗?

代码语言:javascript
复制
<script type="text/javascript">
    var a = [59, 20, 75, 22, 20, 11, 63, 29, 15, 77]; 
    var result = a.indexOf(32);//
    document.write(result);
</script>

错误信息如下:

代码语言:javascript
复制
SCRIPT438: Object doesn't support property or method 'indexOf' 

test.php,第9行字符1

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-10-17 18:11:25

您确定您的页面正在IE9模式下运行吗?签入开发工具(F12)。如果你使用的是旧的DOCTYPE,你可能会在IE8/7模式下看到你的页面,所以不支持indexOf。如果你在IE9模式下运行,那么它工作得很好。

票数 12
EN

Stack Overflow用户

发布于 2011-10-17 18:10:10

您的代码看起来是正确的,this compatibility table显示IE9应该支持indexOf(),并检查您的实际浏览器的兼容性。

试着打开它,看看你的结果。也许你正在IE7/8或其他兼容模式下运行你的IE。

this jsfiddle可以在我的IE9中运行--也请尝试一下。

票数 0
EN

Stack Overflow用户

发布于 2011-10-17 18:12:03

如果显式声明数组,可能会有所帮助:

代码语言:javascript
复制
var a = new Array(1,2,3);
a.indexOf(2);
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7792195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档