javascript - 奇怪的 JavaScript 错误

标签 javascript

请看下面的代码: html...

 <pre id='output'></pre>

html...

JS

 function log(text) {
    var div = document.getElementById('output');
    div.innerHTML += text + '\n';
 }

function foo() {

    var browser=0;
    if(navigator.appName.toUpperCase()=="MICROSOFT INTERNET EXPLORER")
        browser=1;
    else
    if(navigator.appName.toUpperCase()=="NETSCAPE")
        browser=2;
    log ('browser:'+browser);
    if (browser==1)
    {
        log ('IE');
    }
    if (browser==2);
    {
        log ('Chrome');
    }

    if (browser==0);
    {
            log ('Could not determine broweser type');
            return;
    }
  }
<小时/>

当我从 IE 运行此命令时,输出为: browser:1 ie 不支持 将加载 Chrome 扩展程序 无法确定浏览器类型

当我从 Chrome 运行它时,输出是: 浏览器:2 Chrome 扩展将被加载 无法确定浏览器类型

<小时/>

浏览器怎么可能有多个值? 10xs, 尼尔

最佳答案

您的代码中有一个非常初学者的错误

if 末尾的 ; if (browser==0); 导致 if 条件结束,其余部分是一个正常的代码块,无论 browser 的值是什么,每次都会执行

关于javascript - 奇怪的 JavaScript 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12998936/

相关文章:

javascript - Nodejs : . then() 语句在 Promise.all() 之后不执行

javascript - 用于获取和设置同一输入元素的 jQuery 单行代码优化

javascript - 在 jQuery 中,prepend() 如何作用于 children() 函数?

JavaScript 正则表达式 : Match additionals based on path delimiter

javascript - 试图将两个元素合二为一

javascript - 隐藏div点击外面

c# - 从 HSV 中提取色度/相对色度

javascript - IE9 在文件输入选择框中无法看到 "files"

javascript - 访问 JSON 数组中的对象时出现问题

javascript - 如何在 AngularJS 的表单验证中隐藏/显示帮助消息?