カッティングボード

カルマをカットしてます

世にも奇妙なforefoxの話

下のアドベントカレンダーの13日目です。

www.adventar.org

 今回は"世にも奇妙なforefoxの話"ということで、自分が出くわしたfirefoxの謎挙動の一つを紹介します。

 僕はhistory apiを使って戻るボタンの制御を行おうとしていました。そこで以下のようなコードを書いてデバックしていたのです。

f:id:cut-ter:20161213231642p:plain

 pushStateの前後でhistoryの値がどうなるのかを確かめるだけのソースコードです。これを実行すると以下のようになります。

f:id:cut-ter:20161213231736p:plain

 まぁふつうやな。pushしたからlength変わるしstateも変わるよな。次はこのページにブラウザの左上の戻るで戻ってきたときの出力です。

f:id:cut-ter:20161213231926p:plain

 は?なんでlength変わってないの!!!???

 まぁせめてlength変わってないのはいいとしてなんでstate変わってんの!!!???

 この挙動はマジで謎。デバッガーで止まるから実行されてるっぽいし。。。。実行されてるのになんでlength変わってないの?

 

 正直これに関しては解決できず別手段をとることで解決したのでなんでこんな挙動になるのか知ってる方がいたら教えていただけると幸いです。

 

 明日のアドベントカレンダーは「smdr3ke」です。