JavaScript/basic/変数/定数

JavaScript/basic/変数/定数

以前の JS では変数の宣言は var の一本勝負だったが ES6 では const が導入されて再代入不可能な変数、つまり定数として使える変数が定義できるようになった。

単に使うだけなら別に特殊な文法はなく以前の var 同様に使える

const hoge = 123;
console.log(hoge); // => 123
hoge = 345;   // これはできない Assignment to constant variable.

たしかに再代入ができなくなっている。

変数の初期化は必須であり、このように記述することはできない。

const hoge; // これはできない

さらに、再宣言も不可能になっている

const hoge = 123;
const hoge = 123;  // これはできない Identifier 'hoge' has already been declared

定数メンバ

class とかで使うメンバ(フィールド)を固定するにはどうすればよいのか

class Hoge{
    static get PIYO(){
        return "ぴよ";
    }
}
console.log(Hoge.PIYO); // => ぴよ

こうなる

代入しようとしても、エラーにはならないが

Hoge.PIYO = "ふが"; //別にエラーにはならない
console.log(Hoge.PIYO); // => ぴよ

値が保たれていることがわかる。

javascript/basic/val/const.txt · 最終更新: 2019-06-10 12:16 by ore