Open2
何度も見返したいMDN

eventPhase
そのようにイベントなどが起きるか、フェーズなどを知りたい時に見返す
- キャプチャフェーズ
- ダーゲットフェーズ
- バブリングフェーズ
MutationObserver
属性値の変化を監視したいときに使用する。
matchMedia
画面サイズを取得する際に使用する。~px以下になったら特定の処理を走らせたいときなど
defineProperty
既存の標準オブジェクトを変更したいときなどに使う。vitestでは、node上で仮想的なJSDOMという環境をエミュレートする。matchMediaなどはその環境にはなくイベントのみが存在している?つまり、それと同等の関数をモックすることで、テストが可能
Object.defineProperty(window, "matchMedia", {
writable: true,
value: (query: string) => ({
matches: query.includes(`max-width: ${breakpoint.mobile}px`),
media: query,
onchange: null,
addEventListener: vi.fn(),
removeEventListener: vi.fn(),
dispatchEvent: vi.fn(),
}),
});
showModal
モーダルのテストを書くときに見返す

配列
どれも配列の並びを逆にできるが、差別化されている