すっかり遅くなってしまったけど、GNOME 3.38 の変更点。
筆者に関係ありそうなのは Gjs だけだな。
String.replaceAll() なんかはメソッド名で別るんだけーがさぁ。
?? と ?. オペレーターの追加、とあるけど説明無し、何だよコレ。
「 javascript nullish check 」で検索。
JavaScriptのOptional ChainingとNullish Coalescing Operatorでnullやundefinedと戦う
#!/usr/bin/gjs //const p = console?.log ?? print; // Error const p = this.console?.log ?? print; p("SUZUKIS Motorcycle is Cool!");
Gjs には console オブジェクトが無い、ということで単純にやってみた。
オブジェクトを直接 (undefined|null) かどうかは調べられないのね。
プロパティが (undefined|null) かどうかのチェックということね。
グローバルオブジェクトはルートの this から辿れる、いやこんな使い方普通はしない。
#!/usr/bin/gjs if (typeof console === 'undefined') print('print'); else console.log('console');
undefined だけなら昔ながらの方法があるし、筆者も使っていた。
null かどうかも調べたい時に or 演算する手間が省けるようです。
というかコレ ES2020 の新規機能ってことみたい。
JavaScriptの次の仕様ES2020で追加されることが決定した新機能まとめ – ICS MEDIA
これ以外の ES2020 も使えるかテスト。
import 関数は使えない。
Promise はエラー、よくわからない。
matchAll は動く、Gjs では詳細は出力されないけど。
globalThis は Gjs では関係ない、てか this でよくね?
BigInt は GNOME 3.36 で既に対応していた。
ということで、今日の木曽川。
ツグミ、でかいスズメじゃないよ冬しかいないよ。
コゲラ、この可愛らしさでキツツキってのがまた。
エナガ、シジュウカラやメジロと混群していた。
今日はカメラを持った人を結構見た、巨大な白レンズも何人か。
けれど皆カモばかり撮っていた、小鳥も沢山いるのにもったいない。
てか爺さんばかり、なんか道の駅のバイク置き場カヨって感じ。
若い人も電車やコスプレばかりじゃなく小鳥も撮ろうよ。