勉強したことのメモ

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

  関連記事

AndroidのChromeでハマった点
AndroidのChromeでハマった点

Nexus7(Android4.3)のChromeでハマった。 iPhoneやG ...

JavaScriptの「pako」ライブラリでGzip圧縮したデータをPHPで展開する方法
JavaScriptの「pako」ライブラリでGzip圧縮したデータをPHPで展開する方法

先日、JavaScriptの「pako」ライブラリで文字列やオブジェクト(連想配 ...

バニラJS対応(jQuery非依存)の画像遅延読み込みプラグイン「echo.js」の利用方法
バニラJS対応(jQuery非依存)の画像遅延読み込みプラグイン「echo.js」の利用方法

あるサイトをブラウザの開発者ツールで見ていると「echo.js」と聞いたことの無 ...

バニラJavaScript対応の日時ピッカー「Flatpickr」ライブラリの利用方法
バニラJavaScript対応の日時ピッカー「Flatpickr」ライブラリの利用方法

サイト内に日時ピッカーを実装する場合、jQueryの「DateTimePicke ...

Video.jsで表示させた動画プレイヤーにロゴ画像(透かし)を追加する方法(videojs-logo)
Video.jsで表示させた動画プレイヤーにロゴ画像(透かし)を追加する方法(videojs-logo)

Video.jsで表示させた動画プレイヤーの右上等、指定の位置にロゴ画像(透かし ...