JSHint的Bad line breaking before '+'错误解释

16 浏览
0 Comments

JSHint的Bad line breaking before '+'错误解释

有人能解释一下为什么JSHint会对以下代码报错吗?

window.location.href = String1
    + '#'
    + Sting2
    + '='
    + String3;

报错信息为`Bad line breaking before '+' error`。

我知道可以通过配置`laxbreak`选项来消除此错误,该选项在文档中描述如下:

该选项抑制了关于代码中可能不安全的换行的大部分警告。它不会抑制逗号在前的编码风格的警告。要抑制此类警告,需要使用laxcomma(见下文)。

这个解释非常简洁,但我很好奇为什么以这种方式换行被认为是不好的或者是宽松的。

请注意,我并不是想引发争论,我只是想客观地了解JSHint团队为什么认为这种写法不好,他们是否只是将自己的风格偏好注入到了他们的代码检查工具中(我以为JSLint是个有主见的代码检查工具),或者在某些解释器中以这种方式换行会出现问题。

0