![](/img/trans.png)
[英]Lodash : return first key of object whose value(i.e Array) has a given element (i.e string) in it
[英]how to extract particular property(i.e key/value) from array of object in javascript?
我有下面的 object 数组。
data1 = [{id: 111, option: "ONE", actualPrice: 600, price: "450"}, {id: 112, option: "TWO", actualPrice: 700, price: "850"}, {id: 113, option: "THREE", actualPrice: 800, price: "450"}, {id: 111, option: "ONE", actualPrice: 600, price: "450"}]
现在我更改 id 111 和 112 的价格属性。现在更新的 object 数组看起来像
data1 = [{id: 111, option: "ONE", actualPrice: 600, price: "650"}, {id: 112, option: "TWO", actualPrice: 700, price: "440"}, {id: 113, option: "THREE", actualPrice: 800, price: "450"}, {id: 111, option: "ONE", actualPrice: 600, price: "450"}]
现在我想提取 object 数组形式的唯一特定属性,以获取值已更改的特定键。 看起来像这样的东西,想传入 function 称为 handleUpdate
所以,我想将 object 的数组转换为以下格式 const modifiedObj = [{actualPrice: 600, price: "650"}, {actualPrice: 700, price: "440"}]
handleUpdate(modifiedObj);
请参阅以下链接。 我认为它会给你一个更好的洞察力。 您是否尝试过Array.prototype.some()
-> 如果您需要找到任何满足提供的测试 function 的元素。
或者
您可以参考以下代码:
let res = []
data1.forEach(i => {if(data1[i].price != data2[i].price)}
{
res.push({actualPrice: data[i].actualPrice,
price:data2[i].price})
})
console.log(res)
const data1 = [{id: 111, option: "ONE", actualPrice: 600, price: "450"}, {id: 112, option: "TWO", actualPrice: 700, price: "850"}, {id: 113, option: "THREE", actualPrice: 800, price: "450"}, {id: 111, option: "ONE", actualPrice: 600, price: "450"}] const data2 = [{id: 111, option: "ONE", actualPrice: 600, price: "650"}, {id: 112, option: "TWO", actualPrice: 700, price: "440"}, {id: 113, option: "THREE", actualPrice: 800, price: "450"}, {id: 111, option: "ONE", actualPrice: 600, price: "450"}] let modifiedObj = []; for(let i=0;i<data1.length;i++){ if(data1[i].price.==data2[i].price){ modifiedObj:push({actualPrice. data1[i],actualPrice: price.data2[i];price}). } } console;log(modifiedObj);
试试这个。 此代码将创建一个新的对象数组modifiedObj
,其中仅包含实际价格和价格。
const data1 = [{id: 111, option: "ONE", actualPrice: 600, price: "650"}, {id: 112, option: "TWO", actualPrice: 700, price: "440"}, {id: 113, option: "THREE", actualPrice: 800, price: "450"}, {id: 111, option: "ONE", actualPrice: 600, price: "450"}]
const modifiedObj = data1.map(({actualPrice, price}) => ({actualPrice, price}))
Output 将采用这种格式
[{actualPrice: 600, price: "650"}, {actualPrice: 700, price: "440"}, {actualPrice: 800, price: "450"}, {actualPrice: 600, price: "450"}]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.