javascript - React-native 数组检查值是否存在

标签 javascript arrays react-native

如何检查ticketId是否已经插入到数组中?

这是代码:

state = { myState: [], status: 0, limit: 5 };

  selected(ticketId) {
  if (this.state.status < this.state.limit) { 
    this.state.myState.push({ id: ticketId }); //what ever i chose get inserted
    this.state.status++;
    this.setState({ status: this.state.status }); 
    //console.log('here', this.state.status);
  } else {
    console.log('3'); //check if condition meet
  }
 }

如果 ticketId 已经插入并触发警报,我如何创建条件检查 myState 数组?

最佳答案

当您存储为对象 {id:value} 时,最好改用“every”。

state = { myState: [], status: 0, limit: 5 };

selected(ticketId) {
   if (this.state.status < this.state.limit ) { 
      if(this.state.myState.every((item) => item.id !== ticketId)){
        this.state.myState.push({ id: ticketId }); //what ever i chose get inserted
        this.state.status++;
        this.setState({ status: this.state.status }); 
      //console.log('here', this.state.status);
     }
   } else {
   console.log('3'); //check if condition meet
   } 
}

关于javascript - React-native 数组检查值是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46417479/

相关文章:

javascript - 无法填充二维数组

javascript - 如何只让那些 props 传递给组件,组件是根据 switch 决定的

javascript - 如何在 JavaScript 中创建 url 预览?

javascript - 在页面加载时更改元素可见性

javascript - 计算数组中的对象数量?

php - 如何使用 PHP array_walk 函数重新排列多维数组中的键?

react-native - 如何检查已安装的React-Native版本

javascript - 在回调中识别 react-native TextInput 实例

javascript - Jquery 到纯 JavaScript 以及解释器如何使用 dom 查找元素

javascript - 在 React Native 上使用 Expo 发送多个推送通知