javascript 変数宣言letとvarの違い
- 作成日 2020.02.19
- 更新日 2022.03.03
- javascript
- javascript

javascriptの変数宣言であるletとvarの違い、ちゃんと説明できないことがあったので、サンプルコードと出力結果を記載
let
スコープがブロックスコープ。 ES6以上でないと動作しない。
function hoge() {
let x = 1;
console.log("初期値:" + x); //1
//let x = 2;→error
x = 2;
console.log("再代入:" + x); //2
if (true){
let x = 3;
console.log("ブロック内:" + x); //3
}
console.log("最終:" + x); //2
}
hoge()
出力結果
初期値:1
再代入:2
ブロック内:3
最終:2
Var
スコープが関数スコープ 。古いブラウザでも対応している
function foo() {
var x = 1;
console.log("初期値:" + x); //1
var x = 2;
console.log("再宣言:" + x); //2
x = 3;
console.log("再代入:" + x); //3
if (true){
var x = 4;
console.log("ブロック内:" + x); //4
}
console.log("最終:" + x); //4
}
foo()
出力結果
初期値:1
再宣言:2
再代入:3
ブロック内:4
最終:4
-
前の記事
Nuxt.js ライブラリ「v-avatar」を利用してアバターを実装する 2020.02.19
-
次の記事
Nuxt.js 多言語対応Nuxt-i18nの簡単な使い方 2020.02.19
コメントを書く