JavaScriptの変数宣言Var,let,constについて恋愛に置き換えて説明してみました。
主人公は花子ちゃんです。
varの場合
花子ちゃんは同じクラスの太郎くんが好きだと宣言するとします。
var my_crush = "太郎くん";
console.log(my_crush); // 太郎くん;
しかし、二郎くんを好きになってしまった場合、後から宣言し直すことができます。
var my_crush = "二郎くん";
console.log(my_crush); // 二郎くん
letの場合
同じく花子ちゃんは同じクラスの太郎くんが好きだと宣言するとします。
let my_crush = "太郎くん";
console.log(my_crush); // 太郎くん;
次に二郎くんを好きになってしまったとしても、宣言し直すことができません。
let my_crush = "二郎くん" ;
console.log(my_crush); // エラー
しかし、ひっそりと好きな人を二郎くんにすることは可能です。
my_crush = "二郎くん";
console.log(my_crush); // 二郎くん
constの場合
上記同様、花子ちゃんは同じクラスの太郎くんが好きだと宣言するとします。
const my_crush = "太郎くん";
console.log(my_crush); // 太郎くん;
次に二郎くんを好きになってしまったとしても、let同様宣言し直すことができません。
const my_crush = "二郎くん";
console.log(my_crush); // エラー
さらにひっそりと好きな人を変えることもできません。
my_crush = "二郎くん";
console.log(my_crush); // エラー
まとめ
constは最も一途
letは見かけ上一途
varは一途ではないが、いさぎが良い