我正在创建一个网页,并且正在使用此代码来检测浏览器的详细信息,例如版本和名称。

navigator.sayswho= (function(){
    var ua= navigator.userAgent, tem,
    M= ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || [];
    if(/trident/i.test(M[1])){
        tem=  /\brv[ :]+(\d+)/g.exec(ua) || [];
        return 'IE '+(tem[1] || '');
    }
    if(M[1]=== 'Chrome'){
        tem= ua.match(/\b(OPR|Edge)\/(\d+)/);
        if(tem!= null) return tem.slice(1).join(' ').replace('OPR', 'Opera');
    }
    M= M[2]? [M[1], M[2]]: [navigator.appName, navigator.appVersion, '-?'];
    if((tem= ua.match(/version\/(\d+)/i))!= null) M.splice(1, 1, tem[1]);
    return M.join(' ');
})();


在这里找到代码:How can you detect the version of a browser?

我想知道这到底是怎么回事。例如,如果用户使用的是Chrome,则javascript将打开mu文件系统中的哪个文件以读取浏览器的详细信息?

最佳答案

导航器属性在窗口界面上,是在浏览器中找到的标准只读界面。

在这里查看规格:https://www.w3.org/TR/html5/webappapis.html#navigator


  Window接口的navigator属性必须返回Navigator接口的实例,该实例代表用户代理(客户端)的身份和状态,并允许Web页面将自己注册为潜在的协议和内容处理程序:

09-25 22:10