Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将给定字符串与数组子属性进行比较_Javascript_Arrays_Include - Fatal编程技术网

Javascript 将给定字符串与数组子属性进行比较

Javascript 将给定字符串与数组子属性进行比较,javascript,arrays,include,Javascript,Arrays,Include,我正在构建一个玩家数组,当玩家中的名称属性中找不到解算器时,将添加到该数组中 let players = [] let solver = 'Any Name Given' // This if statement is the issue : How to check the name properties and compare to solver // If the solver's name is already in players : add +1 point if(player

我正在构建一个
玩家
数组,当
玩家
中的
名称
属性中找不到
解算器
时,将添加到该数组中

let players = []

let solver = 'Any Name Given'

// This if statement is the issue : How to check the name properties and compare to solver 
// If the solver's name is already in players : add +1 point
if(players.includes(solver)){

   // Give The Player +1 point

   return console.log('Player Exists')

 } else {

   // Add The newPlayer to players with a starting point 
   let newPlayer = [name = solver, points = 1]
   players.push(newPlayer)

}


如何比较
玩家
解算器
内部
名称
。我试过
玩家[name]
玩家。name
运气不好

在你的
其他
中,你应该有:

const newPlayer = {name: solver, points: 1};
i、 e.对象,而不是数组。这样你就有了
players
数组,它总是有
player
对象

现在,由于您拥有的是一个对象数组,因此需要使用类似的方法来查找与您的条件匹配的对象是否存在:

if
条件可替换为:

if (players.some(player => player.name === solver))
我刚刚看到您希望将找到的玩家的点数增加
1
。在这种情况下,您应该使用而不是
some
,这样您就可以访问找到的播放器并更新其
points
属性。这样做:

const player = players.find(player => player.name === solver);

if (player) {
    player.points++;
} else {
    const newPlayer = {name: solver, points: 1};
    players.push(newPlayer)
}


谢谢现在剩下的唯一问题是如何在
if
语句中获取现有对象的
points
属性以添加point@Elitezen最近看到了问题的这一部分,更新了答案,以显示如何增加找到的玩家的
点数。