ブラウザの種類とバージョン情報を調べる

JavaScriptではブラウザによって利用できるプロパティやメソッドが異なる場合がある。
ブラウザの種類を判定し適切なスクリプトを記述することでクロスブラウザに対応することが出来る。

//バージョン情報の取出しには、正規表現とStringオブジェクトのmatchメソッドを利用しています。
function getBrowser(){
    var userAgent = window.navigator.userAgent;
    var browser = {
        safari: /applewebKit.+version/i.test(userAgent),
        chrome: /applewebKit.+chrome/i.test(userAgent),
        firefox: /firefox/i.test(userAgent),
        msie: /msie/i.test(userAgent),
        opera: /opera/i.test(userAgent),
        version: userAgent.match(/(version\/|chrome\/|firefox\/|msie\s|opera\/)([\d\.]+)/i)[2] || ""
    }
    return browser;
}
function writeBrowser(){
    var browser = getBrowser();
    var td = document.getElementById("type");

    if(browser.safari == true){
        td.innerHTML = "Safari";
    }else if(browser.chrome == true){
        td.innerHTML = "Google Chrome";
    }else if(browser.firefox == true){
        td.innerHTML = "Firefox";
    }else if(browser.msie == true){
        td.innerHTML = "Internet Explorer";
    }else if(browser.opera == true){
        td.innerHTML = "Opera";
    }else{
        td.innerHTML = "その他のブラウザ";
    }

    document.getElementById("version").innerHTML = browser.version;
}