UA 文字列を Javascript から得るにあたり検索をかけてみたのだけど、UA 文字列にある文字列 (eg. “MSIE”) があるか調べるときに String.prototype.indexOf の結果が -1 であるかを調べているのが多かった。これはやっぱ String.prototype.match だと遅いとかそういう問題があるからなのだろうか……なんかダサいので今回自分は String.prototype.match を使ったけど、どうなんだろ。
if (navigator.userAgent.indexOf("MSIE") != -1) // do something for MSIE
if (navigator.userAgent.match(/MSIE/)) // do something for MSIE
さらに &&
とか使おうとすると演算子の優先順位 (よく忘れる) とか考えることになって面倒臭い……