繁体   English   中英

比较数组中的两个数字,以查看它们在javascript中是否相等

[英]comparing two numbers in an array to see if they equal in javascript

因此,我正在创建一个匹配的游戏,这是我的点击监听器:

let clicked = -1;
var values = [];

//on click listener function for squares
var box_clicked = function(box){
box.addEventListener("click", function(){
    clicked = clicked + 1;

    //HERE ARE THE VALUES THAT I WANT TO COMPARE
    var value = this.innerHTML;
    values.push(value);
    if(clicked === 2){
        twoClicked();
    }
    console.log(clicked);
    $(this).addClass("fade z-index");
 });
}

因此,当单击等于2并调用twoClicked()函数时,将运行以下代码:

var twoClicked = function(){
    $("div").removeClass("fade z-index");
    clicked = 0;
    var third_value = values.pop(2);
    console.log(values);

    var x = values.indexOf(0);
    var y = values.indexOf(1);
    alert(x);// this alerts -1 for some reason
    alert(y);// this alerts -1

    //if x and y equal then alert "A MATCH"

    values = [];
    values.push(third_value);

}

如果我警告x或y,则返回-1,为什么它没有为我提供我单击的两个框的值。

这里检查出的游戏 ,如果你想的完整代码检查出来这里

indexOf函数返回找到该值的第一个元素的索引。 如果在数组中找不到该值,则返回-1。

这段代码

var x = values.indexOf(0);

...将返回包含0的第一个元素的索引。如果没有一个元素设置为0,则返回-1。

如果您希望元素的值在索引0处,只需使用以下命令:

var x = values[0];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM