JSLint为什么警告我有关switch-case语句格式错误的信息?

问题描述 投票:1回答:1

[在Adobe Brackets中,当编写严格的代码['use strict']时,我从JSLint收到警告,提示我的case语句格式错误:例如。预期在第#列(而非第#列)的“案例”如果我将switch语句中的所有内容移回一个“选项卡”,那么JSLint很高兴。但是,Adobe Brackets(和类似的代码应用程序)希望缩进case语句,即使使用Code Beautify,它也将代码格式化为在case语句之前具有缩进形式。

  • 当使用严格的代码时,JSLint所建议的是否确实是格式化切换案例语句的正确方法?
  • 是否可以在Adobe Brackets中修复/制作JSLint,因此它认为此缩进是正确的? (我想坚持不要破坏JSLint代码)
  • 如果严格的代码不希望您这样做,为什么编辑者会以这种方式格式化switch-case语句?
  • 我真的在这里做错什么了吗?
  • 这仅仅是JSLint的缺点,有没有一种方法可以避免使用switch-case语句,因此在此过程中也让JSLint感到高兴吗?
  • 我真的应该完全停止使用JSLint吗?并切换到其他内容?

此代码嵌套在for循环中:

switch (curButton.button.innerText.toLowerCase()) {
    case this.Part1.Button.ButtonText.toLowerCase():
        this.Part1.Button.ButtonText = curButton.button.innerText;
        this.Part1.Button.Element = curButton.button;
        this.Part1.Button.CurrentClass = curButton.button.className;
        console.log(smgData.PodCast.Parts.Part1.Button);
        break;
    case this.Part2.Button.ButtonText.toLowerCase():
        this.Part2.Button.ButtonText = curButton.button.innerText;
        this.Part2.Button.Element = curButton.button;
        this.Part2.Button.CurrentClass = curButton.button.className;
        console.log(smgData.PodCast.Parts.Part2.Button);
        break;
    case this.Part3.Button.ButtonText.toLowerCase():
        this.Part3.Button.ButtonText = curButton.button.innerText;
        this.Part3.Button.Element = curButton.button;
        this.Part2.Button.CurrentClass = curButton.button.className;
        console.log(smgData.PodCast.Parts.Part3.Button);
        break;
}

这里有一些基本代码,将在https://www.jslint.com/上重现此代码>

function abcd() {
    var a;
    var b;
    switch (a) {
        case 1:
            a=b;
            break;
        case 2:
            b=a;
            break;
    }
}

JSLint Warnings

[在Adobe Brackets中,当编写严格的代码['use strict']时,我收到JSLint的警告,表明我的case语句格式错误:例如。如果不是,则在第#列而不是第#列应有“ case”,如果我...

javascript switch-statement warnings jslint adobe-brackets
1个回答
1
投票

这听起来像是JSLint的问题。

© www.soinside.com 2019 - 2024. All rights reserved.