Может ли кто-нибудь объяснить мне, как на "пустой оператор" в javaScript влияет "Автоматическая вставка точки с запятой"
Может ли кто-нибудь объяснить мне, как на "пустой оператор" в javaScript влияет "Автоматическая вставка точки с запятой". На веб-сайте MDN указано, что на пустой оператор влияет автоматическая вставка точки с запятой, хотя в спецификации ECMAScript это не указано, может кто-нибудь объяснить это мне и может кто-нибудь объясните мне, в чем разница между точкой с запятой и пустым заявлением
1 ответ
Прочтите спецификацию, указанную на странице MDN. Пустой оператор "затронут", потому что ASI не будет выполняться, если вставленная точка с запятой приведет к пустому оператору.
Отжимания рук при возникновении ASI можно избежать, просто явно включив точку с запятой. Самая распространенная ошибка ИСИ - этоreturn
заявление, при попытке чего-то вроде
return
{ propertyName: "something" };
Не делай этого. Запустите инициализатор объекта в той же строке, что иreturn
.
Что касается разницы между точкой с запятой и пустым оператором: точка с запятой является границей. В следующем коде:
var x; ;
Есть var
оператор объявления, затем пустой оператор. Вторая точка с запятой не является частью пустого оператора, но подразумевает, что перед ней стоит пустой оператор.