【问题标题】:Safari showing JS error, but Chrome doesn'tSafari 显示 JS 错误,但 Chrome 没有
【发布时间】:2017-02-06 09:58:07
【问题描述】:

我对 JS 很陌生。我一直在开发几个 JS 函数。他们在 Chrome 中工作。昨天我在 Safari 中尝试了它,它吐出了错误。

功能:

Request.SetForm = function (form, ruleset = [], messageset = null, focus = null, special = false, ignore = false) {

// Code here

}

我这样称呼它:

var $validator = Request.SetForm(arguments here);

现在 Safari 说:

ReferenceError:找不到变量:请求

正如我所说,Chrome 什么也没说,而且运行良好。这里有什么问题?

【问题讨论】:

  • 请求是Fetch 的一部分 - 请参阅caniuse.com/#feat=fetch ... safari 10.1 是支持的最低版本 - IOS Safari,没有运气

标签: javascript google-chrome safari referenceerror


【解决方案1】:

不要忘记在使用前声明请求。 使用

var Request = {};

然后使用

Request.method = function(){}

因为某些旧版本如果未声明则无法解析变量(通常当我们在use strict 模式下使用时会出现此问题。

否则, 请求可能是您正在使用的 safari 版本中的关键字或内置方法。 换个名字就好了。

【讨论】:

  • 谢谢,原来是这个原因。
  • 我做到了。但我没有名声,所以没有显示出来:(
  • (y) 好的,没问题,兄弟。如果您可以将其标记为答案,请尝试这样做。它可能会帮助其他人。
猜你喜欢
  • 1970-01-01
  • 2011-05-19
  • 1970-01-01
  • 1970-01-01
  • 2013-01-28
  • 1970-01-01
  • 1970-01-01
  • 2019-05-11
  • 1970-01-01
相关资源
最近更新 更多