检查数组是否包含一组特定的整数

时间:2018-02-24 16:06:21

标签: javascript

是否可以检查变量数组是否包含数字1,0,0,1

例如,

var array = [1,0,0,1];
if (array === 1001) alert("success");

4 个答案:

答案 0 :(得分:5)

您只需join数组即可查看

  

join()方法连接数组的所有元素(或类似数组)   对象)进入一个字符串并返回该字符串。

注意:您需要使用==代替===,因为join将返回一个字符串。

像:

var array = [1, 0, 0, 1];
if ( array.join("") == 1001 ) alert("success");

根据以下建议,您还可以使用===并将其与字符串进行比较。

var array = [1, 0, 0, 1];
if ( array.join("") === "1001" ) alert("success");

请查看有关加入的更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join

答案 1 :(得分:1)

使用join()方法将数组的所有元素连接成一个字符串并返回该字符串。



var elements = [1,0,0,1];

console.log(elements.join('') === "1001");
// expected output: true




答案 2 :(得分:0)

使用方法join("")将数组转换为不带逗号的字符串

然后使用includes("1001")检查预期结果

希望这就是你要找的东西。如果需要,很乐意解释或帮助提供更好的解决方案。

var array = [1,0,0,1];
var string = array.join("");
console.log(string);
if (string.includes('1001')) alert("success");

答案 3 :(得分:0)

嗯,每个人都严格回答你的问题;但我想我会稍微补充一下。假设你想让它变得更有活力。这样我们检查数组的子集以查找您要查找的字符串,而不仅仅是整个数组。



Array.prototype.containsSequence = function(str, delimiter){
  
  //Determines what is seperating your nums
  delimiter = delimiter || '';
  
  //Check the sub array by splicing it, then joining it
  var checkSection = function (arr, start, end, str){
      return arr.slice(start, end).join(delimiter) === str;
  };
  
  let start = 0; //start of our sub array
  let end = str.length; //the length of the sub array
  
  //Loop through each x size of sub arrays
  while(end < this.length){
    //Check the section, if it is true it contains the string
    if(checkSection(this, start, end, str)){
      return true;
    }
    //Incriment both start and end by 1
    start++;
    end++;
  }
  
  //We dont contain the values
  return false;
};

///Test stuff
const ARRAY = [1,2,3,4,5,6,7,8,9,10];

if(ARRAY.containsSequence('456')){
  console.log('It contains the str');
}else console.log('It does not contain');
&#13;
&#13;
&#13;