0

谁能告诉我为什么纱线格式在我的方括号前添加一个分号。没有它,纱线构建失败..

    ;[
      this.querySelector('[class$="-cover"] img'),
      this.querySelector('.FullscreenCarousel-cover-count')
     ].forEach(item => {
         // actions
    })
    })
4

1 回答 1

7

考虑以下(基本)代码:

doSomething()
[1].forEach(i => doAnotherThing(i))

以这种方式阅读它,看起来很简单——调用某个函数,然后遍历一个数组并调用另一个函数。两个单独的步骤。

但是,JS 不查看空格。如果你看到这样的代码怎么办:

doSomething()[1].forEach(i => doAnotherThing(i))

现在这意味着什么?现在看起来您需要调用doSomething()which 返回一个数组,获取该数组的第 1 项,并希望是一个数组,因为我们正在迭代它。

相对于:

doSomething();[1].forEach(i => doAnotherThing(i))

这也压缩了空格,但现在很明显,您的意思是这些是两个完全独立的步骤。像这样在前面加上分号的主要原因是为了澄清你的意图。

于 2019-09-23T19:43:58.307 回答