GW前にChrome 74が正式リリースが行われ、V8(JavaScriptエンジン)もv7.4となりました。
V8 release v7.4には、開発者向けの機能が満載らしく一部を紹介します。
■[JavaScript language features] Private class fields
“#”で始まるクラスフィールドを宣言すれば、そのフィールドはクラスの外からアクセスできなくなりました。
class IncreasingCounter {
#count = 0;
get value() {
console.log('Getting the current value!');
return this.#count;
}
increment() {
this.#count++;
}
}
上記のクラスを以下のように実行すると...
const counter = new IncreasingCounter();
counter.#count;
// → SyntaxError
counter.#count = 42;
// → SyntaxError
「#count」のようにフィールドの先頭に#を付けることでSyntaxErrorとなり、フィールドを非公開にすることができます。
■Bytecode dead basic block elimination
Ignitionバイトコードコンパイラは、dead codeと分かっているコードのバイトコードを生成しないようになりました。
function sample() {
...
return;
deadCall();
}
上記の例では、deadCall()がバイトコードから削除が行われます。
また、
function sample() {
do {
if (2.2) return;
break;
} while (true);
deadCall();
}
上記の例では、breakのバイトコードが作成されなくなり、deadCall()もデッドコードとしてバイトコードが生成されなくなるようです。
そこまでするなら、バイトコードから消すより、構文エラーにしてほしいですね。。。(汗
[公式ブログ]https://v8.dev/blog/v8-release-74
今月の帰社日の飲み会は、『焼肉 房家』。
こちらのお店はホントに安定して美味しいです!
写真を撮り忘れましたが、盛岡冷麺も非常に美味しかったです。
あまりにも美味しかったので調べてみたら、オリジナル練り出し機を使っているため、非常にコシの強い麺でつるつるした触感を出していたり、冷麺のスープ水にもこだわっていて、通常では味わえないまろやかさにしているとのことです。
まずは、豪華前菜3種盛り
炙りタンしゃぶ。この後包み込んでひと口で食べます。
希少部位入り黒毛和牛一頭買い盛り合わせ。
今までは1年に一度程度足を運んでいましたが、あまりにも美味しいので社員達も頻度を増やしたいって話していました!






