Рассмотрим следующий (базовый) код:
doSomething()
[1].forEach(i => doAnotherThing(i))
Считая это таким образом, это выглядит просто - вызовите некоторую функцию, а затем выполните итерации по массиву и вызовите другую функцию.Два отдельных шага.
Однако JS не смотрит на пробелы.Что если вы увидели код, подобный следующему:
doSomething()[1].forEach(i => doAnotherThing(i))
Что это теперь означает?Теперь, похоже, вам нужно вызвать doSomething()
, который возвращает массив, взять элемент 1 этого массива и, надо надеяться, , что является массивом, потому что мы перебираем его.
В противоположностьto:
doSomething();[1].forEach(i => doAnotherThing(i))
Что также сокращает пробелы, но теперь ясно, что вы имеете в виду, что это два совершенно отдельных шага.Основная причина для добавления такой точки с запятой состоит в том, чтобы уточнить ваши намерения.