Javascript 循环定义的for..中let和const的用法

Javascript 循环定义的for..中let和const的用法,javascript,ecmascript-6,Javascript,Ecmascript 6,我非常熟悉es6let和const之间的区别。我不太确定的是,在循环的定义范围内 我知道循环签名的“老派”将不接受const 即 这是怎么回事 为什么const在for..of中被允许,但不是循环的老派 循环内的最终结果差异是什么?(除了可能在循环中重新分配elem,我不希望有很多人会这样做)只重新分配了一个变量,因此出现了错误 for (const i = 0; i < 100; i++) 如果不在块内重新分配变量,也可以使用const而不是letconst也可以在老式循环中使用(不是

我非常熟悉es6
let
const
之间的区别。我不太确定的是,在循环的定义范围内

我知道循环签名的“老派”将不接受
const

这是怎么回事

为什么
const
for..of
中被允许,但不是循环的老派


循环内的最终结果差异是什么?(除了可能在循环中重新分配
elem
,我不希望有很多人会这样做)

只重新分配了一个变量,因此出现了错误

for (const i = 0; i < 100; i++)

如果不在块内重新分配变量,也可以使用const而不是let
const
也可以在老式循环中使用(不是语法错误)。你就是不能增加它。@Bergi yep我意识到,在问了这个问题之后做进一步的研究时,我可能会放弃这个问题,因为它是一个傻瓜。我的搜索没有找到这些:)
const someArray = ['hello', 'hey'];

for (let elem of someArray) ... // works
for (const elem of someArray) ... // also works?
for (const i = 0; i < 100; i++)
for (const elem of someArray)