【问题标题】:Filter objects from an array of objects based on propertie [duplicate]根据属性从对象数组中过滤对象[重复]
【发布时间】:2018-05-25 12:34:24
【问题描述】:

需要你的帮助,我在“服务器”js 文件中有这个数组, 比,使用服务,存储在 allplayers = []; 我想过滤数组,以便只保留爵士乐手(在 player = []; 中) 使用下面的代码。知道为什么它不起作用吗?谢谢

var players = [
    {team: 'bulls', fullName: 'Kerr', position: 'SG', ranking: '7', id: '1' },
    {team: 'jazz',fullName: 'stockton', position: 'PG', ranking: '9', id: '2'},
    {team: 'jazz',fullName: 'malone', position: 'PF', ranking: '8', id: '3'}
];

export class PlayersComponent implements OnInit {
  players = [];
  allplayers = [];
  bullsPlayers = [];

  constructor(private _playerService: PlayerService) {}

  filterjazzplayers(){
    for (let i = 0; i < this.allplayers.length; i++) {
        if (this.allplayers[i].team == 'jazz') {
          this.players.push(this.allplayers[i]);
        }
    }
  }

  ngOnInit (){
    this._playerService.getPlayers()
    .subscribe(
      allplayers => this.allplayers = allplayers,
      error =>  console.log(<any>error)
    );

    this.filterjazzplayers();
  }

【问题讨论】:

  • 这是什么语言?
  • JavaScript。使用 Angular。
  • 哦抱歉,我手机上没看到js部分。我也编辑添加了一些标签。

标签: javascript angular object filter properties


【解决方案1】:

我可能是错的,但我认为当您创建具有相同名称的新数组时可能会出现问题。它可能无法区分本地玩家数组和起始玩家数组。以下代码可以作为 html 文件中的简单 javascript 正常工作。希望这可以帮助您找到问题所在。

<!DOCTYPE html>
<html>
<script>
var players = [
    {team: 'bulls', fullName: 'Kerr', position: 'SG', ranking: '7', id: '1' },
    {team: 'jazz',fullName: 'stockton', position: 'PG', ranking: '9', id: '2'},
    {team: 'jazz',fullName: 'malone', position: 'PF', ranking: '8', id: '3'}
];

  var newPlayers = [];

  function filterJazzPlayers()
  {
    for(let i = 0; i < players.length;  i++)
    {
       if(players[i].team == 'jazz')
       {
          newPlayers.push(players[i]);
       }
    }
  }

  filterJazzPlayers();
  for(var j = 0; j < newPlayers.length; j++)
  {
    console.log(newPlayers[j].fullName);  
  }



  </script>
  <html>

【讨论】:

    猜你喜欢
    • 2016-05-15
    • 2018-12-25
    • 2021-04-21
    • 2018-07-06
    • 1970-01-01
    • 1970-01-01
    • 2020-02-29
    • 2021-04-15
    • 2017-03-19
    相关资源
    最近更新 更多