ブロックスコープ

by yshrkn

JavaScript

/**
 * aでは何が出力されますか?
 * var i = 1 を、 let i = 1 に変更した場合はどうなるでしょうか?
 * (letはES2015の機能ですが..)
 *
 * 「ブロックスコープ」とは何でしょうか?
 * 
 * ★解答
 * エラー「not defined」が出力される。
 * let命令はブロックスコープをもつ変数を宣言するために用いる。
 * ブロックスコープとは、{}(大括弧)で括られた範囲内でのみ有効なスコープのこと。
 */


// for (let i = 1; i < 3; i++) {
for (var i = 1; i < 3; i++) {
 //
}
console.log("i", i);	// a