【问题标题】:How do you "combine variables" in JavaScript to satisfy JSLint? [duplicate]你如何在 JavaScript 中“组合变量”来满足 JSLint? [复制]
【发布时间】:2015-08-31 14:08:37
【问题描述】:

对于一个学校项目,我正在尝试制作一个可以做事的网站。 为此,我使用了 HTML、JavaScript 和 CSS。我正在使用一个提供调试提示的编译器。这些提示由 JSLint 提供。有人告诉我应该结合我写的两个变量,但我不明白这是什么意思。

我已经做了一些研究(在 Stack Overflow 和其他网站上),但所有这些都提出了想要将变量放入数组的人。

有人能解释一下我应该怎么做吗?

代码(简化):

var x = document.getElementById("some id");
var y = document.getElementById("some other id");
var z = document.getElementsByTagName("some tag name");

而 JSLint 说:

“将此与前面的 'var' 语句结合起来:var y = document.getElementById("some other id");" 和:

将此与前面的“var”语句结合起来。 var z = document.getElementsByTagName("某个标签名");

重要提示:代码确实工作,但 JSLint 告诉我要修复它。

【问题讨论】:

  • 这么多人支持研究工作..

标签: javascript jslint


【解决方案1】:
var x = document.getElementById("some id"),
    y = document.getElementById("some other id"),
    z = document.getElementsByTagName("some tag name");

你可以像上面的例子那样声明变量。

【讨论】:

    【解决方案2】:

    它告诉您将变量声明链接起来,而不是单独列出它们。在 js 中,您可以使用逗号来分隔声明,而不是使用分号来表示语句的结尾。

    以下是 3 个独立的声明...

    var x = document.getElementById("some id");
    var y = document.getElementById("some other id");
    var z = document.getElementsByTagName("some tag name");
    

    要对 3 个不同的变量(及其定义)进行这一声明...

    var x = document.getElementById("some id"),
        y = document.getElementById("some other id"),
        z = document.getElementsByTagName("some tag name");
    

    注意这仍然必须以分号结尾来分隔(变量声明)语句。

    【讨论】:

    • 好的。我现在明白了。感谢您的帮助! :)
    【解决方案3】:

    只是让您知道,您编写的是有效的 JavaScript。错误更多是关于风格。如果您处于严格模式,这很重要。

    错误的意思是您需要使用逗号运算符将所有变量声明组合成一行。

    var x = document.getElementById("some id"),
        y = document.getElementById("some other id"),
        z = document.getElementsByTagName("some tag name");
    

    可以获取JSLInt错误解释here

    【讨论】:

      猜你喜欢
      • 2011-01-19
      • 2017-02-18
      • 1970-01-01
      • 2019-10-03
      • 1970-01-01
      • 2011-02-18
      • 1970-01-01
      • 2015-08-29
      • 2016-11-02
      相关资源
      最近更新 更多