6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【ES2015】「var」で書かれるcodeにまだ出くわすことも多いが「let」か「const」の方がいいのか

Last updated at Posted at 2023-10-19

どうもダメ人間です。 :spy:

今回は、古い()コードを改修する際によく見かけ、「お、これはES2015にすべきか、このままでいいのか、、」窓際すぎて誰にも質問できないため、自分で悩んで自分で回答してみた、の回である。(窓際とは)

let、const、varの定義

表にまとめてみたら、一目瞭然だった!
これまでの苦悩が綺麗さっぱりです。
再宣言、再代入は置いといて。
スコープですね。。(確信。。)

Qiita用.png

出会った時に書き換えるべきかどうかの問題について

これまでの自分は「え、varも便利やん、、全然ええやん、、古いからって使わないのかわいそう! 文化の喪失、、etc」などと考えていた。
しかし、諸行無常。常に変化。の世界。
更新しなくては遅いのだ。(もうすでに遅い)
ので、三年前に本気でかき分けていただいたこの方の結論を元に

ほぼ全部constで定義できる
オブジェクトや配列の値の変更は再代入にはならないため。
プリミティブ型を再代入したい場合はlet
varはもう使わない
https://qiita.com/cheez921/items/7b57835cb76e70dd0fc4

このダメ人間、これからは自信を持って「もうvarは使わない」とここに宣言する(フラグ)
ありがとう。みんな。(誰や)

結論

自分的にvarは捨てがたいものの、最大のデメリットである「すり抜け」(スコープが効かない)のために、使わないのがいいのかもしれないでござる。
ありがとうでござったvar。
大好きでござったvar。
これからはconstを使わせていただくでござる。(るろ剣で移った)

眠くて読めてない、理解浅い部分があるので、気が向いたら追記するでござる。

参考にした記事

な、なんとこのかた、二年前の元日にこの記事を書かれているのですね。。
ダメ人間も息が長く、向上心のあるアンテナのようなエンジニアになりたいものです

色々な記事があるので安定の公式ドキュメントをば。

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?