【问题标题】:Check equality to a set of values in an array with a specific value and return index [duplicate]检查是否等于具有特定值的数组中的一组值并返回索引[重复]
【发布时间】:2018-12-07 20:39:33
【问题描述】:

我有一个以下数组:[400, 600, 1000] - 如果它等于数组中的任何值,我需要查看该数组的变化/动态值,并返回匹配值的索引。

试过了:

arr.every(x => x = dynamicValue );  

这个返回布尔值

【问题讨论】:

  • arr.every(x => x = dynamicValue ); 正在设置一个值,您需要使用相等运算符arr.every(x => x === dynamicValue );
  • indexOf() 会做
  • @CodeManiac 不会 indexOf 也给我一个布尔值吗?
  • @monkeyjs 如果不小于-1,它将给出匹配索引。如果你想要 bool,你可以使用包含

标签: javascript reactjs ecmascript-6


【解决方案1】:

如果要查找索引:

let yourArray = [400, 600, 1000];
let yourVariable = 600;
let indexElement = yourArray.indexOf(yourVariable); 

更新:

获取数组wish元素的索引:

let yourArray = [400, 600, 1000];    
let yourVariable = 1000;
let yourIndexes = [];
yourArray.forEach((e, i)=>{
        if(e < yourVariable) 
            yourIndexes.push(i);
    });

【讨论】:

  • @stackoverflow.com/users/1646240/stepup 有没有办法在这里获得所有小于 600 的索引?过滤器返回具有匹配值的更新数组 - 但如何获取索引 - 在这里我需要获取 [0,1] - 当检查数组中的值时
  • @monkeyjs 请看我更新的答案。
  • 像魅力一样工作。非常感谢@StepUp。
  • @monkeyjs 我在我的实现中发现了一个包。现在它可以正常工作了。请参阅yourIndexes 数组中的必要索引。随时问任何问题。如果您发现我的回复有帮助,您可以将其标记为答案,以简化其他人日后的搜索。
猜你喜欢
  • 2021-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-13
  • 1970-01-01
  • 1970-01-01
  • 2020-12-11
  • 2021-12-16
相关资源
最近更新 更多