Javascript 在角度可观测服务中查找返回未定义

Javascript 在角度可观测服务中查找返回未定义,javascript,typescript,Javascript,Typescript,我在模拟一些数据,就我个人而言,javascript.find方法的简单之处就是返回未定义的数据 USERS: IUserDetail[] = [ { id: 1, firstName: 'Greg', lastName: 'Smith', email: 'gsmith@gmail.com', phone: '111-222-3333', company: 'ABC Corp, In

我在模拟一些数据,就我个人而言,javascript.find方法的简单之处就是返回未定义的数据

USERS: IUserDetail[] = 
  [
      {
        id: 1,
        firstName: 'Greg',
        lastName: 'Smith',
        email: 'gsmith@gmail.com',
        phone: '111-222-3333',
        company: 'ABC Corp, Inc.',
        country: 'United States of America',
        city: 'New York',
        jobRole: 'Chief Financial Officer',
        accountType: 'Individual'
      }
  ]

  getUserById(userId: number): Observable<IUserDetail> {
    console.log(userId) // returning 1
    console.log(this.USERS.find(x => x.id === userId)) // returning undefined
    return of(this.USERS.find(x => x.id === userId));
  }
用户:IUserDetail[]=
[
{
id:1,
名字:“格雷格”,
姓氏:“史密斯”,
电邮:'gsmith@gmail.com',
电话:111-222-3333,
公司名称:ABC公司,
国家:'美利坚合众国',
城市:“纽约”,
职位角色:“首席财务官”,
帐户类型:“个人”
}
]
getUserById(userId:number):可观察{
console.log(userId)//返回1
console.log(this.USERS.find(x=>x.id==userId))//返回未定义
返回(this.USERS.find(x=>x.id==userId));
}

记录
x
。查看相等检查是否正确。需要的double等于而不是triple。如果id是一个值,那么triple等于不应该工作吗?你应该仔细检查比较。