TypeScript + diff-match-patch で差分検知
diff-match-patch を TypeScript で使った簡単なサンプルです。
diff-match-patch はテキスト同士の比較をできる便利なライブラリです。
差分をhtmlに出力できます。
とうもろこしをレンジでチンするときの注意
とうもろこしはレンジでチンした方が栄養素がなくならず良いそうです。
ラップでとうもろこしを包んでチンしますが、重要なのはそのあとです。
直後は熱くて食べれないので少しおいて冷ましますが、このときにラップをとらな ...
TypeScript のoverride 修飾詞について
TypeScript には override 修飾詞というものがあります。
以下のように、親クラスのメソッドをオーバーライドしているときにこの修飾詞をつけることができます。
class Parent { getHog ...
TypeScript unknown の値からプロパティへアクセスするまで
unknown 型の値に対してプロパティアクセスするとエラーになるのでそれを防止する方法です。
Record<string, unknown>型ガードを使ってとして挙げることでこれを回避します。
const i ...
もし鍋がなかったらどうやって料理するか
最近料理をしているときに思ったのですが、鍋がなかったら何を代用にすればよいのか調べてみました。
いくつか候補があったのですが、その中でも実用的だったのは竹を使う方法です。
なるほど、確かに青竹を半分に切ってそこ ...
TypeScript インデックスシグネチャの危険性
インデックスシグネチャを安易に使わない方が良いという話です。
以下のコードはTypeScriptの型推論と実際の挙動が一致しません。
type T1 = { : boolean}const obj: T1 = { h ...
TypeScript インデックスシグネチャを使うときの注意点
以下のコードは、T1 は hoge プロパティは string でそれ以外は number としたい意図です。
type T1 = { hoge: string} & { : number}const a: T1 = { hog ...
TypeScript 4.8 から変わる unknown の動き
unknown はすべての型を包括しています。
そして、{} は null と undefined 以外のすべての型を指します。
つまり、null | undefined | {} はすべての型を指すので理論上 ...
Mac 任意のサイズのテキストファイルを作成する方法
base64 コマンドを使って、Mac で任意のファイルサイズのテキストファイルを作成します。
以下は100Mのファイルを作成する例です。
$ base64/dev/urandom | head -c 1048576 ...
シェル 標準出力のリダイレクトについて
以下は echo で出力される hoge を test.txt へ出力する。
$ echo hoge >test.txtこれは実は省略されているものがあり、以下と同じである。
$ echo hoge 1> ...









