JavaScript检查使用类别的数组是否包含字符串

时间:2017-12-04 21:04:26

标签: javascript arrays string

我有一个包含以下数据的数组。

[ { name: 'hello', value: 'Bot hello!' },
  { name: 'help', value: 'Print help sheet.' },
  { name: 'kick', value: 'Kicks a user.' },
  { name: 'ping', value: 'Check the bot\'s Connection' },
  { name: 'roll', value: 'Roll a die.' } ]

var str = "ping"
if (str == //One of the names in the array){
   //Do stuff

}

如何创建一个函数来检查字符串是否为" ping"等于"名称中的一个值:"类别?我希望这是动态的,所以如果字符串等于" roll"它会标记卷在数组中。

2 个答案:

答案 0 :(得分:1)

在ES6中:

var data = [ { name: 'hello', value: 'Bot hello!' },
  { name: 'help', value: 'Print help sheet.' },
  { name: 'kick', value: 'Kicks a user.' },
  { name: 'ping', value: 'Check the bot\'s Connection' },
  { name: 'roll', value: 'Roll a die.' } ]
  
var str = "ping"

console.log(data.some(x => x.name === str))

答案 1 :(得分:0)

您可以使用本机数组方法some

function contain(array, value) {
  return array.some(a => a.name === value);
}
if (contain(array, 'ping')){
   //Do stuff

}