JavaScript检查迭代器是否包含值

JavaScript检查迭代器是否包含值,javascript,arrays,iterator,Javascript,Arrays,Iterator,对于JavaScript数组,includes(value)函数在且仅当数组包含值时返回true。 检查值是否包含在(例如,map.values() 第一种方法(可能不是最有效的方法): Array.from(it).includes(value) 第二种方法(不是那么短): const iteratorIncludes=(it,value)=>{ 对于(其中的x个){ 如果(x==值)返回true } 返回错误 } 迭代器包括(it、值) 您的第二种方法看起来不错。当然,您需要将helper

对于JavaScript数组,
includes(value)
函数在且仅当数组包含值时返回true。 检查值是否包含在(例如,
map.values()

第一种方法(可能不是最有效的方法):

Array.from(it).includes(value)
第二种方法(不是那么短):

const iteratorIncludes=(it,value)=>{
对于(其中的x个){
如果(x==值)返回true
}
返回错误
}
迭代器包括(it、值)

您的第二种方法看起来不错。当然,您需要将helper函数藏在某个地方,但是您只需要声明一次,这样就不要紧了——调用既短又高效(甚至比第一种方法更短)

或者,使用并检查
it.some(v=>v==value)
1。它们还没有提供镜像
数组的
includes
方法


1:从技术上讲,
includes
使用的结果不同于
=

您的第二种方法看起来不错。当然,您需要将helper函数藏在某个地方,但是您只需要声明一次,这样就不要紧了——调用既短又高效(甚至比第一种方法更短)

或者,使用并检查
it.some(v=>v==value)
1。它们还没有提供镜像
数组的
includes
方法


1:从技术上讲,
includes
使用的结果不同于
=
对于
NaN
@pilchard,这只检查映射的键。第二个看起来不错。当然,您需要将helper函数放在某个地方,但是调用是简短而高效的。或者,使用并检查它。一些(v=>v==value)
@Bergi你能回答吗?@qwr完成,请参见下面的
map.has()
@pilchard,这只检查映射的键。第二个看起来不错。当然,您需要将helper函数放在某个地方,但是调用是简短而高效的。或者,使用并检查
it.some(v=>v==value)
@Bergi你能回答吗?@qwr完成,见下文