猿问

if(!flag) 为什么会出现这个条件 我觉得没有改变flag的条件啊!

document.getElementById('search-btn').onclick = function () {   
    initBox(); 
    var key = document.getElementById('search-text').value.trim(); 
    time = 0;  
    flag = false;  //初始化布尔

    opt = getRadioBoxValue('search'); 
    switch(opt) {
        case 'preorder':
            preorderSearch(root, key);
            break;
        case 'postorder':
            postorderSearch(root, key);
            break;
        case 'level':
            levelTraversalSearch(root, key);
            break;
    }

    if(!flag) {   
        setTimeout(function () { 
            alert('抱歉,没有找到!');
        },time+400);
    }
    
}


19990000
浏览 1452回答 2
2回答

小羊杨

document.getElementById('search-btn').onclick = function () {       initBox();     var key = document.getElementById('search-text').value.trim();     time = 0;      flag = false;  //初始化布尔     opt = getRadioBoxValue('search');     switch(opt) {        case 'preorder':            preorderSearch(root, key);    // 这三个函数看了没,可能这里面会做对flag改变吧,不过这种写法真是莫名其妙            break;        case 'postorder':            postorderSearch(root, key);  // 这三个函数看了没,可能这里面会做对flag改变吧,不过这种写法真是莫名其妙            break;        case 'level':            levelTraversalSearch(root, key);  // 这三个函数看了没,可能这里面会做对flag改变吧,不过这种写法真是莫名其妙            break;    }     if(!flag) {           setTimeout(function () {             alert('抱歉,没有找到!');        },time+400);    }     }

橋本奈奈未

不懂你的意思。你是没有改变。!flag为true所有每次都会弹出抱歉没找到。你确定要flag要取反?
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答