为了账号安全,请及时绑定邮箱和手机立即绑定

按属性值从对象数组中获取JavaScript对象

按属性值从对象数组中获取JavaScript对象

萧十郎 2019-06-11 20:59:31
按属性值从对象数组中获取JavaScript对象假设我有一个由四个对象组成的数组:var jsObjects = [    {a: 1, b: 2},     {a: 3, b: 4},     {a: 5, b: 6},     {a: 7, b: 8}];有什么方法可以获得第三个对象({a: 5, b: 6})按财产的价值计算b例如,如果没有for...in循环?
查看完整描述

3 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

Filter属性与值匹配的对象数组返回数组:

var result = jsObjects.filter(obj => {
  return obj.b === 6})

Array.Prototype.filter()上的MDN文档

const jsObjects = [

  {a: 1, b: 2}, 

  {a: 3, b: 4}, 

  {a: 5, b: 6}, 

  {a: 7, b: 8}

]


let result = jsObjects.filter(obj => {

  return obj.b === 6

})


console.log(result)

Find数组中第一个元素/对象的值,否则为undefined会被归还。

var result = jsObjects.find(obj => {
  return obj.b === 6})

Array.Prototype.find()上的MDN文档

const jsObjects = [

  {a: 1, b: 2}, 

  {a: 3, b: 4}, 

  {a: 5, b: 6}, 

  {a: 7, b: 8}

]


let result = jsObjects.find(obj => {

  return obj.b === 6

})


console.log(result)


查看完整回答
反对 回复 2019-06-11
?
慕容森

TA贡献1853条经验 获得超18个赞

jsObjects.find(x => x.b === 6)

来自MDN:

这个find()方法返回数组中的值,如果数组中的元素满足所提供的测试函数。不然的话undefined会被归还。


附带说明:类似的方法find()而且以前的浏览器(如IE)不支持箭头函数,所以如果您想要支持这些浏览器,您应该使用巴贝尔.


查看完整回答
反对 回复 2019-06-11
  • 3 回答
  • 0 关注
  • 1458 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信