勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

JavaScriptの変数宣言であるvar / let / constの使い分けについて

   2024/02/20  JavaScript

JavaScript関連の調べ物をしていた際、変数の宣言時にvarではなくletと記述されているソースを見かけた。初めて見たので何なのか調べてみるとvarとlet以外にもconstというものもあった。以下にそれぞれの違いや使い方をメモ。

 

違い

再宣言 再代入 初期値の省略 スコープ外の呼び出し
var ○ ○ ○ ○
let × ○ ○ ×
const × × × ×

 

再宣言、再代入、初期値の省略、スコープ外の呼び出しについての詳細は以下の通り。

再宣言

var hoge = 1;
var hoge = 2;

再代入

var hoge = 1;
hoge = 2;

初期値の省略

var hoge;

スコープ外の呼び出し

if( num < 1  ){
    var hoge = 1;
}
console.log(hoge); //ここで呼び出せるかどうか

 

使い方

基本的には再代入の可能性があればletを、なければconstを使うのが良いみたい。

 

参考サイト

https://techacademy.jp/magazine/14872

 - JavaScript

  関連記事

サイトをダークモード対応させる「Darkmode.js」ライブラリの利用方法
サイトをダークモード対応させる「Darkmode.js」ライブラリの利用方法

サイトをダークモード対応させる場合、CSSで色々指定しないといけないと思っていた ...

マウスオーバーでの画像切り替えをJavaScriptで簡単に対応
マウスオーバーでの画像切り替えをJavaScriptで簡単に対応

マウスが要素にのった際に画像を切り替える処理を入れたかった。多分CSSの管轄なん ...

JavaScriptのトースト(通知)用ライブラリ「iziToast.js」の利用方法
JavaScriptのトースト(通知)用ライブラリ「iziToast.js」の利用方法

システム構築の際、エラー表示をJavaScriptのアラートではなくトースト(通 ...

「slick」でブラウザ幅がPCの場合はスライダーを表示し、スマホ幅の場合はスライダー無しにする方法
「slick」でブラウザ幅がPCの場合はスライダーを表示し、スマホ幅の場合はスライダー無しにする方法

slickプラグインで画像スライダーを設置しているページがあり、PCのブラウザ幅 ...

jQueryで特定のdata属性をセレクタとして指定する方法
jQueryで特定のdata属性をセレクタとして指定する方法

jQueryで特定のdata属性をクリックした際に何らかのイベントを実行したかっ ...