【发布时间】:2025-12-18 17:40:01
【问题描述】:
我有一个名为revenue的对象:
var revenue = {
"Month": "2011-01",
"Week1_Revenue": "123.02",
"week2_Revenue": "330.51",
"Week3_Reenue": "201.98",
"Month1_TotalRevenue": "700.12"
};
我想过滤和/或映射一些属性到一个新对象:
var filtered = {
"Month": "2011-01",
"Week1_Revenue": "123.02",
"Month1_TotalRevenue": "700.12"
};
我想专门过滤Month、Week1_Revenue和Month1_TotalRevenue。
我尝试了一些东西,但它告诉我.map 不是一个函数。最初,该对象是一个字符串,所以我在其上调用了JSON.parse():
var revenueMod = revenue.map(item => {
return {
"date": item['Month'],
"w1_revenue": item['Week1_Revenue'],
"total_revenue": item['Month1_Revenue']
};
});
【问题讨论】:
-
"Month"="2011-01"澄清一下,这是不是应该是"Month":"2011-01"的错字? -
是的,这就是我的意思,但我修复了它
-
map是一个数组方法,revenue是一个对象。请阅读文档以获取更多信息。 -
.map()在这里不是一个函数,因为revenue不是一个数组,它是一个对象。您必须将对象包装在[](首选)中,但如果您无法控制该对象,只需测试它是否为数组,如果不是,则直接使用revenue["Month"]等访问
标签: javascript arrays object variables