Что это значит в Mozilla: блоки let и выражения let устарели

Я наткнулся на несколько заявлений от людей, что «блоки и выражения let устарели» в SpiderMonkey, хотя информации об этом очень мало. Мне интересно, что это конкретно означает? Разве оператор «let» не является популярной новой функцией в ES6?

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features

https://bugzilla.mozilla.org/show_bug.cgi?id=1023609

В чем разница между использовать let и var для объявления переменной в JavaScript?


person Xun Yang    schedule 02.05.2018    source источник
comment
Объявления переменных let в порядке. И они являются причиной того, что блоки let устарели.   -  person Bergi    schedule 02.05.2018
comment
@Bergi Не могли бы вы привести несколько примеров? Я не понимаю, что именно означают блоки let или выражения let.   -  person Xun Yang    schedule 02.05.2018
comment
@XunYang: И вам, вероятно, не нужно. :-)   -  person T.J. Crowder    schedule 02.05.2018
comment
@T.J.Crowder Нееет, ты меня очень любопытствуешь.   -  person Xun Yang    schedule 02.05.2018


Ответы (2)


let объявление переменной по-прежнему широко используется. Что-то вроде:

let i = 4;

В полном порядке. В статье, на которую вы ссылаетесь, рассказывается о let блоках. Что-то вроде

let (x = x +1, y = x-1) {
  console.log("This is a let block!");
}

Устарело и не должно использоваться.

person chevybow    schedule 02.05.2018
comment
Я понятия не имею, что даже было вещью. Хорошо, что я могу забыть об этом. - person Cerbrus; 02.05.2018
comment
Благодарю вас! Это действительно интересно :) - person Xun Yang; 02.05.2018

JS1.7 (от 2006 г.) представил такие функции, как деструктуризация и let, однако они отличались от let и деструктуризации, которые мы знаем из ES6. Старая реализация устарела и больше не поддерживается движком Firefox начиная с версии v41.

Вы можете узнать больше о let блоков и letexpressions в старой редакции страницы MDN по ключевому слову let.

person Bergi    schedule 02.05.2018