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

通过调节另一个对象属性来访问对象数组中的对象值

通过调节另一个对象属性来访问对象数组中的对象值

森林海 2023-03-24 14:52:46
这行得通,但问题是我可以一次性将naziv.valuein保存在 this 中,这样我就不必声明另一个变量了吗?var nazivfind methodvar naziv = obj.find(c => c.name === "naziv"); console.log(naziv.value)当前输出是应该的test, console.log(naziv.value)我想只是console.log(naziv)var obj = [{    name: "naziv",    value: "test"  },  {    name: "zzz",    value: "xxx"  }]var naziv = obj.find(c => c.name === "naziv");console.log(naziv.value)编辑:如果名称相同,还要制作一个数组或值,例如:var obj = [{    name: "naziv",    value: "test"  },  {    name: "zzz",    value: "xxx"  },  {    name: "Telefon[]",    value: "tel1"  }, {    name: "Telefon[]",    value: "tel2"  }]var naziv = obj.find(c => c.name === "Telefon[]");console.log(naziv.value)应该:[tel1,tel2]
查看完整描述

3 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

如果您希望多个值作为一个数组,这可以是其中一种方法


var obj = [{name:"naziv",value:"test"},{name:"zzz",value:"xxx"},{name:"Telefon[]",value:"tel1"},{name:"Telefon[]",value:"tel2"}]


var naziv = obj.filter(c => c.name === "Telefon[]").map(res => res.value);

console.log(naziv)


同样,如果该值本身就是预期输出,并且如果只期望单个值,则以下是其中一种方法。在这里,我用过Optional Chaining


var obj = [{name:"naziv",value:"test"},{name:"zzz",value:"xxx"},{name:"Telefon[]",value:"tel1"}]


var naziv = obj.find(c => c.name === "Telefon[]")?.value;

console.log(naziv)


如果您需要此代码来运行某些旧版本的浏览器并且不支持,则可能有机会Optional Chaining下面是另一种方式


var obj = [{name: "naziv",value: "test"},{name: "zzz",value: "xxx"},{name: "Telefon[]",value: "tel1"}]


var naziv = (obj.find(c => c.name === "Telefon[]") || {}).value;

console.log(naziv)


var notFound = (obj.find(c => c.name === "not_found") || {}).value;

console.log(notFound);


查看完整回答
反对 回复 2023-03-24
?
白板的微信

TA贡献1883条经验 获得超3个赞

var obj = [{

    name: "naziv",

    value: "test"

  },

  {

    name: "zzz",

    value: "xxx"

  },

  {

    name: "naziv",

    value: "xxx"

  }

]


var naziv = obj.filter(item => item.name === 'naziv').map(item => item.value)

console.log(naziv)


查看完整回答
反对 回复 2023-03-24
?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

你可以使用像这样的解构const {value:naziv} = obj.find(c => c.name === "naziv");



查看完整回答
反对 回复 2023-03-24
  • 3 回答
  • 0 关注
  • 75 浏览
慕课专栏
更多

添加回答

举报

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