再宣言
読み:さいせんげん
一度宣言した変数を、同じ変数名で宣言し直すこと。
概要
プログラミング言語の仕様にもよるが、再宣言が可能な場合、後から宣言された変数が適用される。
同じブロックスコープ内での再宣言は不可とされるプログラミング言語でも、その中に別途ブロックを作りその中でなら再宣言が可能、とするものも少なくない。
言語仕様として幾らでも再宣言できる、とするものはいくらか珍しいが、かつてのJavaScriptはそうだった。JavaScriptの変数宣言varは、再宣言が可能である。
var a = 0;
var a = 1;
console.log(a); // 出力は `1` となる
しかし、これができること自体の利点はほぼ無く、予期しない再宣言が起こりうるなどバグの温床でしかない。
JavaScriptは元々このvarしかなかったが、この言語仕様は欠陥だったため、JavaScript 1.7およびECMAScript 2015 (ES6)から再宣言ができないletが追加されている。
再検索