我有一个JS函数array.includes这个问题。我有这个数组:
问题是当我使用这段代码时,什么都不会发生。
var array_type;
//array has these 2 values:
//array_type[0] == 0;
//array_type[1] == 2;
if (array_type.includes(2)) {
console.log("good");
}
你知道为什么吗?谢谢你的帮助。
答案 0 :(得分:2)
答案 1 :(得分:2)
该代码适合我。例如,
var partitionOffset = _producer.QueryWatermarkOffsets(new TopicPartition("myTopic", myPartition), TimeSpan.FromSeconds(10));
将记录var array_type = [0, 2];
if (array_type.includes(2)) {
console.log("good");
}
。
确保您正确地将项目插入阵列。
答案 2 :(得分:2)
如果您使用的是Internet Explorer
,那么array.includes()
将无效。相反,您需要使用indexOf
。 Internet Explorer不支持Array.includes()
var array_type = [0, 2];
if (array_type.indexOf(2) !== -1) {
console.log("good");
}

检查链接中的浏览器兼容性部分
答案 3 :(得分:2)
这里你没有添加值,你正在测试array_type [0]是否等于0 和array_type [1]等于2
//array has these 2 values:
array_type[0] == 0;
array_type[1] == 2;
所以这段代码
if (array_type.includes(2)) {
console.log("good");
}
绝不是真的 尝试
var array_type = [];
array_type[0] = 0;
array_type[1] = 2;
if (array_type.includes(2)) {
console.log("good");
}
答案 4 :(得分:1)
var array_type = [];
//array has these 2 values:
array_type[0] = 0;
array_type[1] = 2;
if (array_type.includes(2)) {
console.log("good");
}
这应该有效!
答案 5 :(得分:1)
我认为两个注释都是值集(=)而不是比较(==)
因为使用第一个选项,它可以工作:
> array_type.includes(2)
true