пусть вар или вар пусть

За последние пару месяцев я много узнал о JavaScript. Злоупотребляя языками в течение многих лет, я осмелюсь сказать, что теперь у меня есть лучшее понимание языка, и я пришел клюбовь Преимущества его функциональной природы.
В последнее время я начал изучать Схему, но это просто для удовольствия. Сидя вСсылка на MDN Я заметил, что у JS, хотя и отсутствует область действия блока, есть ключевое слово, которое можно использовать для объявления переменной, локальной для данного блока, так же, как схемаlet:

for (var i=0;i<someArray.length;i++)
{
    console.log(someArray[i]);
}
console.log(i);//will log someArray's length

В то время как:

for (let i=0;i<someArray.length;i++)
{
    console.log(someArray[i]);
}
console.log(i);//undefined

Итак, что я хочу знать сейчас: почему нетlet используется чаще? Это как-то связано с поддержкой X-браузера? Это только один из техменее известные-лакомства?
Короче, каковы преимущества использованияvar надletКакие предостережения?

Насколько я могу судить, поведениеlet является, во всяком случае, более последовательным (двойные объявления в одном блоке поднимаютTypeError, за исключением функциональных органов (это возможно в черновиках ECMA6).
Честно говоря, кроме того, что эта особенность / ключевое слово не очень хорошо известны, я изо всех сил думаю оЛюбые аргумент против использованияlet для циклов или в любом месте, где временная переменная создает более читаемый код.

Ответы на вопрос(1)

Ваш ответ на вопрос