比较 javascript 对象数组中的嵌套对象属性

问题描述 投票:0回答:1

我正在尝试比较对象数组中的嵌套对象属性。就我而言,prop5:

const obj1 = {"prop1":1,"prop2":"foo","prop3":{"prop4":2,"prop5":123}}

const obj2 = {"prop1":3,"prop2":"foo","prop3":{"prop4":2,"prop5":321}}

const obj3 = {"prop1":3,"prop2":"foo","prop3":{"prop4":2,"prop5":123}}

const obj4 = {"prop1":3,"prop2":"foo","prop3": NULL}

我需要返回所有 prop3 是否相等。我需要考虑所有 prop3 是否都为空。我试过了,但没用。有什么想法我做错了吗?

const everyHasSameValue = data.every( (data.prop3) => prop5 === data[0].prop3.prop5);
javascript typescript
1个回答
0
投票

您要迭代的数据可以是对象 - 之后您在回调中指定对象和

prop3
键:

const everyHasSameValue = data.every((obj) => obj.prop3.prop5 === data[0].prop3.prop5);

或者它可以是解构的对象

prop3
键:

const everyHasSameValue = data.every(({ prop3 }) => prop3.prop5 === data[0].prop3.prop5);

它不能像你想做的那样将两者混合起来。

© www.soinside.com 2019 - 2024. All rights reserved.