Javascript 检查是否在数组中找到值
我试图检查数组中是否包含某个数字 我试过使用Javascript 检查是否在数组中找到值,javascript,arrays,Javascript,Arrays,我试图检查数组中是否包含某个数字 我试过使用if(矿山中的值)和var value=this.value;var isMine=矿山指数(价值) 但这两种方法都没有达到预期效果。有人能解释为什么吗? JS var=[] 而(长度
if(矿山中的值)
和var value=this.value;var isMine=矿山指数(价值)代码>
但这两种方法都没有达到预期效果。有人能解释为什么吗?
JS
var=[]
而(长度<9){
var randomnumber=Math.ceil(Math.random()*30)
var=false;
对于(var i=0;i当它是一个数组时,您应该使用indexOf
,但您有两个主要问题
首先,类型必须匹配。数组有数字,但元素的值始终是字符串。
简单的解决方案是将值解析为整数
var value = parseInt( this.value, 10 );
其次,indexOf
返回索引,它将为数组中的第一项返回0
,并且0
是错误的,因此您必须实际检查-1
,如果不匹配,indexOf
将返回该索引
if (mines.indexOf(value) != -1) { ...
一点简化,你会得到
var mines = [];
while (mines.length < 9){
var randomnumber = Math.ceil(Math.random() * 30);
if ( mines.indexOf(randomnumber) == -1 )
mines.push(randomnumber);
}
$(document).ready(function() {
$(".blank").click(function() {
var isBomb = mines.indexOf( parseInt( this.value, 10 )) != -1;
$(this).removeClass('blank').addClass(isBomb ? 'bomb' : 'safe');
});
});
var=[];
而(长度<9){
var randomnumber=Math.ceil(Math.random()*30);
if(mines.indexOf(randomnumber)=-1)
地雷。推送(随机数);
}
$(文档).ready(函数(){
$(“.blank”)。单击(函数(){
var isBomb=mines.indexOf(parseInt(this.value,10))!=-1;
$(this.removeClass('blank').addClass(isBomb?'bomb':'safe');
});
});
当它是一个数组时,您应该使用indexOf
,但您有两个主要问题
首先,类型必须匹配。数组有数字,但元素的值始终是字符串。
简单的解决方案是将值解析为整数
var value = parseInt( this.value, 10 );
其次,indexOf
返回索引,它将为数组中的第一项返回0
,并且0
是错误的,因此您必须实际检查-1
,如果不匹配,indexOf
将返回该索引
if (mines.indexOf(value) != -1) { ...
一点简化,你会得到
var mines = [];
while (mines.length < 9){
var randomnumber = Math.ceil(Math.random() * 30);
if ( mines.indexOf(randomnumber) == -1 )
mines.push(randomnumber);
}
$(document).ready(function() {
$(".blank").click(function() {
var isBomb = mines.indexOf( parseInt( this.value, 10 )) != -1;
$(this).removeClass('blank').addClass(isBomb ? 'bomb' : 'safe');
});
});
var=[];
而(长度<9){
var randomnumber=Math.ceil(Math.random()*30);
if(mines.indexOf(randomnumber)=-1)
地雷。推送(随机数);
}
$(文档).ready(函数(){
$(“.blank”)。单击(函数(){
var isBomb=mines.indexOf(parseInt(this.value,10))!=-1;
$(this.removeClass('blank').addClass(isBomb?'bomb':'safe');
});
});
当它是一个数组时,您应该使用indexOf
,但您有两个主要问题
首先,类型必须匹配。数组有数字,但元素的值始终是字符串。
简单的解决方案是将值解析为整数
var value = parseInt( this.value, 10 );
其次,indexOf
返回索引,它将为数组中的第一项返回0
,并且0
是错误的,因此您必须实际检查-1
,如果不匹配,indexOf
将返回该索引
if (mines.indexOf(value) != -1) { ...
一点简化,你会得到
var mines = [];
while (mines.length < 9){
var randomnumber = Math.ceil(Math.random() * 30);
if ( mines.indexOf(randomnumber) == -1 )
mines.push(randomnumber);
}
$(document).ready(function() {
$(".blank").click(function() {
var isBomb = mines.indexOf( parseInt( this.value, 10 )) != -1;
$(this).removeClass('blank').addClass(isBomb ? 'bomb' : 'safe');
});
});
var=[];
而(长度<9){
var randomnumber=Math.ceil(Math.random()*30);
if(mines.indexOf(randomnumber)=-1)
地雷。推送(随机数);
}
$(文档).ready(函数(){
$(“.blank”)。单击(函数(){
var isBomb=mines.indexOf(parseInt(this.value,10))!=-1;
$(this.removeClass('blank').addClass(isBomb?'bomb':'safe');
});
});
当它是一个数组时,您应该使用indexOf
,但您有两个主要问题
首先,类型必须匹配。数组有数字,但元素的值始终是字符串。
简单的解决方案是将值解析为整数
var value = parseInt( this.value, 10 );
其次,indexOf
返回索引,它将为数组中的第一项返回0
,并且0
是错误的,因此您必须实际检查-1
,如果不匹配,indexOf
将返回该索引
if (mines.indexOf(value) != -1) { ...
一点简化,你会得到
var mines = [];
while (mines.length < 9){
var randomnumber = Math.ceil(Math.random() * 30);
if ( mines.indexOf(randomnumber) == -1 )
mines.push(randomnumber);
}
$(document).ready(function() {
$(".blank").click(function() {
var isBomb = mines.indexOf( parseInt( this.value, 10 )) != -1;
$(this).removeClass('blank').addClass(isBomb ? 'bomb' : 'safe');
});
});
var=[];
而(长度<9){
var randomnumber=Math.ceil(Math.random()*30);
if(mines.indexOf(randomnumber)=-1)
地雷。推送(随机数);
}
$(文档).ready(函数(){
$(“.blank”)。单击(函数(){
var isBomb=mines.indexOf(parseInt(this.value,10))!=-1;
$(this.removeClass('blank').addClass(isBomb?'bomb':'safe');
});
});
您可以这样做:
var myArray = ["one", "two", "three", "four"];
var myString = myArray.join("***") + "***";
var mySubstring = "four";
var inArray = myString.indexOf(mySubstring + "***");
if(inArray >= 0){alert("It's in array");}
您可以这样做:
var myArray = ["one", "two", "three", "four"];
var myString = myArray.join("***") + "***";
var mySubstring = "four";
var inArray = myString.indexOf(mySubstring + "***");
if(inArray >= 0){alert("It's in array");}
您可以这样做:
var myArray = ["one", "two", "three", "four"];
var myString = myArray.join("***") + "***";
var mySubstring = "four";
var inArray = myString.indexOf(mySubstring + "***");
if(inArray >= 0){alert("It's in array");}
您可以这样做:
var myArray = ["one", "two", "three", "four"];
var myString = myArray.join("***") + "***";
var mySubstring = "four";
var inArray = myString.indexOf(mySubstring + "***");
if(inArray >= 0){alert("It's in array");}
this.value
返回一个字符串。请尝试此操作。已更新
this.value
返回一个字符串。请尝试此操作。已更新
this.value
返回一个字符串。请尝试此操作。已更新
this.value
返回一个字符串。请尝试此操作。已更新
var value=+this.value
将字符串转换为整数var value=+this.value
将字符串转换为整数var value=+this.value
将字符串转换为整数var value=+this.value
将字符串转换为整数更改为if(mines.indexOf(value)>-1)
为什么不使用inArray?检查:更改为if(mines.indexOf(value)>-1)
为什么不使用inArray?检查:更改为if(mines.indexOf(value)>-1)
为什么不使用inArray?检查:更改为if(mines.indexOf)(值)>-1)
为什么不使用inArray?请检查以下内容: