勉強したことのメモ

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

  関連記事

javascriptでゼロパティング
javascriptでゼロパティング

月日をゼロパディングしたかったけど PHPとは違い、そういった関数は無かったので ...

バニラJS対応(jQuery非依存)の画像遅延読み込みライブラリ「lazysizes」の利用方法
バニラJS対応(jQuery非依存)の画像遅延読み込みライブラリ「lazysizes」の利用方法

あるサイトのコーディングデータを貰った際に「lazysizes」というJavaS ...

JavaScriptで配列の中から最大・最小値を取得する方法
JavaScriptで配列の中から最大・最小値を取得する方法

JavaScriptで配列の中から最大・最小値を取得したかった。以下に対応方法を ...

Video.jsでテーマを指定して動画プレイヤーのデザインを変更する方法
Video.jsでテーマを指定して動画プレイヤーのデザインを変更する方法

Video.jsで動画プレイヤーのデザインを変更したい。調べたところWordPr ...

セレクトメニュー(プルダウン)をdisplay:none;指定してもiPhoneのみ非表示にならない問題の対応方法
セレクトメニュー(プルダウン)をdisplay:none;指定してもiPhoneのみ非表示にならない問題の対応方法

セレクトメニュー(プルダウン)に対してdisplay:none;指定したりjQu ...