【问题标题】:sifr 3 r436 javascript error in IE 8IE 8 中的 sifr 3 r436 javascript 错误
【发布时间】:2009-10-06 15:29:57
【问题描述】:

我在 IE8 中收到此错误:

Object doesn't support this property or method

在这条线上。

this.results.forEach(function(a){if(!a.views){a.views=0}})

我是 sifr 的新手,对 Javascript 也很陌生,所以我不确定在这里做什么。如果有人能指出我“有用”的方向,那就太好了。

【问题讨论】:

    标签: javascript internet-explorer-8 sifr


    【解决方案1】:

    到目前为止,在任何版本的 IE 中,您都没有在数组上获得 forEach 方法。 Array.prototype.forEach 是 ECMA-262 第五版功能,您不能依赖它可用:浏览器支持基线是第三版,其中没有 mapfilterforEach 甚至 indexOf数组。

    您可以通过修改Array.prototype 来更正此问题,以添加您喜欢的方法。例如,参见MDC 的代码。或者,如果您正在使用原型库,您可以使用 .each,这对您隐藏了差异。

    ECMA-262 真的很难读;在旧的Netscape 4-era JavaScript reference 中查找内置类型的真正受支持的无处不在基线的有用位置。忽略其他地方最好记录的 DOM 内容,但它对 JavaScript 内置类型很有用。

    【讨论】:

    • 感谢帮助我缩小范围。实际上是在 Twitter 小部件中,而不是在 sifr 替换工具中。再次感谢
    • 谢谢 bobince!你为我节省了很多时间:)
    猜你喜欢
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-20
    • 2010-12-16
    • 1970-01-01
    • 1970-01-01
    • 2011-11-18
    相关资源
    最近更新 更多