ブラウザのキャッシュって何を保存してるの?
HTML、CSS、JavaScript、画像など、サーバーから取得したリソースのコピーを保存してるよ。次に同じページを開いたときサーバーに取りに行かなくて済むから、表示が速くなるんだ
キャッシュの期限ってどうやって決めてるの?
サーバーがCache-Controlヘッダーで指定するよ。例えば「max-age=3600」なら1時間キャッシュを使っていいよという意味。「no-cache」なら毎回サーバーに鮮度を確認してから使う。「no-store」ならキャッシュしないんだ
キャッシュが古くなったらどうなるの?
期限が切れたら条件付きリクエストを送るよ。「このETag値のリソース、まだ変わってない?」とサーバーに聞いて、変わってなければ304 Not Modifiedが返ってきてキャッシュを再利用する。変わってたら新しいデータが送られてくるんだ
キャッシュの設定を間違えるとどうなるの?
max-ageを長くしすぎると、サイトを更新しても古いCSSやJSが使われ続けちゃう。だからJS/CSSにはファイル名にハッシュをつけて(app.a1b2c3.js)immutableキャッシュにし、HTMLはno-cacheで毎回チェックするのが現代のベストプラクティスだよ