iOS 5中的JavaScript getter问题

时间:2011-10-20 08:05:53

标签: javascript ios5

我在网站上使用JavaScript getter,该网站经过优化可在iPad上运行。一切运行正常,但在更新到iOS 5后,该网站停止了工作。

最终我发现了问题所在。

我有一个配置对象,它包含以下结构的只读属性(这就是我使用getter的原因):

var Config = (function() {

    var DateFormat = "dd/MM/yyyy";

    return {
       get DateFormat() { return DateFormat; }
    };

}());

出于某种原因,iOS 5中的JavaScript引擎不喜欢getter(DateFormat)的名称与私有变量的名称相同。如果我将其重命名为_DateFormat,它可以工作:

var Config = (function() {

    var _DateFormat = "dd/MM/yyyy";

    return {
       get DateFormat() { return _DateFormat; }
    };

}());

我的问题是:它应该如何工作,还是JavaScript引擎中的错误?

1 个答案:

答案 0 :(得分:0)

如果您正在使用JQuery或其他JS库,则可能会以某种方式调用dateFormat函数。

这是一个示例,其中有一个名为dateFormat的JQuery函数:

http://blog.stevenlevithan.com/archives/date-time-format