勉強したことのメモ

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

  関連記事

tableタグでスクロール時にヘッダーを残して表示する方法(jquery-decapitate)
tableタグでスクロール時にヘッダーを残して表示する方法(jquery-decapitate)

テーブルタグ内で縦にスクロールした際にテーブルヘッダー部分は表示させたままテーブ ...

JavaScriptの「Day.js」ライブラリで日付の比較を行う方法
JavaScriptの「Day.js」ライブラリで日付の比較を行う方法

JavaScriptの日時・時刻用ライブラリ「Day.js」を用いて日付の比較を ...

Leafletで「Leaflet.markercluster」プラグインを導入してマーカークラスタ機能を追加する方法
Leafletで「Leaflet.markercluster」プラグインを導入してマーカークラスタ機能を追加する方法

LeafletとOpenStreetMapでマップ上にマーカーを複数設置した上で ...

JavaScriptにて電子書籍や漫画ビューア用のライブラリ「ToraViewer」の利用方法
JavaScriptにて電子書籍や漫画ビューア用のライブラリ「ToraViewer」の利用方法

電子書籍や漫画ビューア用を設置したい。条件としてはレスポンシブ対応していること。 ...

formでGET送信時に空のパラメータを送信しない方法(cleanQuery)
formでGET送信時に空のパラメータを送信しない方法(cleanQuery)

フォームでGET送信する際、通常だと空のパラメータも送信される。結果として「ドメ ...