我有一个包含以下数据的数组。
[ { 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"它会标记卷在数组中。
答案 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
}