きり丸の技術日記

技術検証したり、資格等をここに残していきます。

TypeScript

JavaScriptでundefinedのときにデフォルト値を設定する(Null合体演算子 ??)(JavaのOptional.orEleseみたいなの)

地味に知らなかったので。 前提 JavaScript 対応 Null合体演算子??を使用する。 const item = { "A": "1" }; console.log(item.A.toString()); // "1" console.log(item.B?.toString()); // undefined console.log(item.A.toString() ?? "100"); // "1" cons…

JavaScript(TypeScript)のMapでgerOrElseと同等の動きを簡潔に書く

JavaだとMapのvalueを取得する際に、取得できなかった場合のデフォルト値を返すgetOrElseメソッドが用意されていますが、JavaScriptにはありません。今回の記事では、その同等の挙動を簡潔に書けるようにします。 環境 TypeScript 4.7.4 CodeSandboxで検証 …

JavaScript, GAS, TypeScriptで自作例外を作成する

GASを使用していて、雑にエラーハンドリングしたい時に自作例外をthrowして、ハンドリングしたいと思いました。 今回の記事は、JavaScript・GAS・TypeScriptで自作例外を作成します。 環境 GAS 2022/01/27 TypeScript 4.4.2 CodeSandboxで検証 コード 自作例…

TypeScriptでPythonのキーワード引数みたいな挙動をさせる(ROROパターン)

TypeScriptを書いていて、Pythonでいうキーワード引数(名前付き引数)のような挙動をしたいとTwitterに呟いたところ、【公式】皮しばきさん、suinさんに反応していただけました。 その中でsuinさんに教えていただいたデザインパターンのROROパターン(Recei…