特定のブラウザーが AJAX をサポートしているかどうかを確認する場合、私は通常、オブジェクト検出を行います。
if (window.XMLHttpRequest)
{
xhr = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
ただし、より上級の開発者によって記述されたコードを見ると、代わりに try-catch ブロックが表示される可能性が高くなります。
try {
xhr = new ActiveXObject("Microsoft.XMLHTTP"); //IE
}
catch(e) // if not IE
{
xhr = new XMLHttpRequest();
}
一部の人々が try..catch の方が遅いと言うのは知っていますが、これがほとんど好みの問題である場合、これを行うための規則/より「標準的な」方法はありますか? innerHTML(非標準)とDOM(標準)のどちらかを決定していたときも、ずっと前に同じ状況にありました。お時間をいただきありがとうございます。任意の提案をいただければ幸いです。