Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jsFiddle的全局变量_Javascript_Jquery_Jsfiddle - Fatal编程技术网

Javascript 使用jsFiddle的全局变量

Javascript 使用jsFiddle的全局变量,javascript,jquery,jsfiddle,Javascript,Jquery,Jsfiddle,在JSFIDLE环境中,我希望创建一个循环,以随机顺序显示数字1到10,不重复 除其他事项外,在JSFIDLE环境中处理全局变量有困难 希望: JSFIDLE中全局变量的解释 使我的代码正常工作(期望目标:通过循环以随机顺序打印数字1到10) 多谢各位 对于后代,以下是来自JSFIDLE的代码: HTML: <div id="response"></div> <input type="button" id="mybutt" value="Get Next" /&g

在JSFIDLE环境中,我希望创建一个循环,以随机顺序显示数字1到10,不重复

除其他事项外,在JSFIDLE环境中处理全局变量有困难

希望:

  • JSFIDLE中全局变量的解释
  • 使我的代码正常工作(期望目标:通过循环以随机顺序打印数字1到10)
  • 多谢各位

    对于后代,以下是来自JSFIDLE的代码:

    HTML:

    <div id="response"></div>
    <input type="button" id="mybutt" value="Get Next" />
    
    var cnt;
    var window.arrDone = [];
    
    function nextQues() {
        return Math.floor(Math.random()*3) + 2;
    }
    
    $('#mybutt').click(function() {
        cnt++;
        console.log('Count is now: ' + cnt);
        if (cnt < 10) {
            nn = nextQues();
            console.log('Testing: ' + nn);
            if (window.arrDone.indexOf(nn) > -1) {
                console.log('Already Seen: ' + nn);
            }else{
                console.log('FOUND NEW: ' + nn);
                window.arrDone.push(nn);
            }
            $('#mybutt').trigger('click');
        }
    });
    
    
    
    javascript/jQuery:

    <div id="response"></div>
    <input type="button" id="mybutt" value="Get Next" />
    
    var cnt;
    var window.arrDone = [];
    
    function nextQues() {
        return Math.floor(Math.random()*3) + 2;
    }
    
    $('#mybutt').click(function() {
        cnt++;
        console.log('Count is now: ' + cnt);
        if (cnt < 10) {
            nn = nextQues();
            console.log('Testing: ' + nn);
            if (window.arrDone.indexOf(nn) > -1) {
                console.log('Already Seen: ' + nn);
            }else{
                console.log('FOUND NEW: ' + nn);
                window.arrDone.push(nn);
            }
            $('#mybutt').trigger('click');
        }
    });
    
    var-cnt;
    var window.arrDone=[];
    函数nextQues(){
    返回Math.floor(Math.random()*3)+2;
    }
    $('#mybutt')。单击(函数(){
    cnt++;
    log('现在的计数为:'+cnt);
    if(cnt<10){
    nn=nextQues();
    console.log('测试:'+nn);
    if(window.arrDone.indexOf(nn)>-1){
    console.log('已看到:'+nn);
    }否则{
    console.log('foundnew:'+nn);
    窗口。完成。推送(nn);
    }
    $('mybutt')。触发器('click');
    }
    });
    

    为子孙后代:

    <div id="response"></div>
    <input type="button" id="mybutt" value="Get Next" />
    
    var cnt;
    var window.arrDone = [];
    
    function nextQues() {
        return Math.floor(Math.random()*3) + 2;
    }
    
    $('#mybutt').click(function() {
        cnt++;
        console.log('Count is now: ' + cnt);
        if (cnt < 10) {
            nn = nextQues();
            console.log('Testing: ' + nn);
            if (window.arrDone.indexOf(nn) > -1) {
                console.log('Already Seen: ' + nn);
            }else{
                console.log('FOUND NEW: ' + nn);
                window.arrDone.push(nn);
            }
            $('#mybutt').trigger('click');
        }
    });
    
    任何在研究自己的解决方案时遇到此问题的人,也应查看此相关内容,因此发布:

    • 确保您阅读了Joe Enos的答案,并对下面的讨论进行了评论
    试试这个:

    var cnt = 0;
    var window = {};
    window.arrDone = [];
    
    演示


    JSFIDLE中的全局变量与网站中的全局变量相同。尽管最好是在JSFIDLE的左上菜单中使用
    no wrap
    ,并拥有自己的
    .ready()
    函数。否则,它将用站点上没有的
    onload
    函数包装代码。

    var窗口。arrDone
    是无效语法。这是您的问题。cnt不是故意在任何地方初始化的,还是您的问题?JSFIDLE中的全局与其他地方的全局没有什么不同,只是脚本窗格的内容默认包装在函数中。查看此处并选择结果iframe上下文。“在那里你会找到你的地球仪。”拉斐尔·卡斯特罗库托刚刚帮了我很多忙,谢谢你。这正是我需要的,很好的解释。欣赏修改后的小提琴。谢谢大家+1.接受。@gibberish,很高兴我能帮上忙!我认为重要的是要提到,在jsFiddle示例中,
    cnt
    window
    window.arrDone
    不是全局变量。