Javascript 我如何根据一个键过滤JSON,所以我只有一个针对所有对象的键类型列表
Javascript 我如何根据一个键过滤JSON,所以我只有一个针对所有对象的键类型列表,javascript,arrays,json,google-apps-script,google-sheets,Javascript,Arrays,Json,Google Apps Script,Google Sheets,[ { “id”:100, “账户id”:8, “名称”:“停止服务”, “默认”:false, “创建时间”:“2012-02-06T08:51:29.720-06:00”, 更新日期:“2012-02-06T08:51:29.720-06:00” }, ... ]而不是Array.prototype.filter()您应该使用 代码: const数据=[ { “id”:100, “账户id”:8, “名称”:“停止服务”, “默认”:false, “创建时间”:“2012-02-06T08
[
{
“id”:100,
“账户id”:8,
“名称”:“停止服务”,
“默认”:false,
“创建时间”:“2012-02-06T08:51:29.720-06:00”,
更新日期:“2012-02-06T08:51:29.720-06:00”
},
...
]
而不是Array.prototype.filter()
您应该使用
代码:
const数据=[
{
“id”:100,
“账户id”:8,
“名称”:“停止服务”,
“默认”:false,
“创建时间”:“2012-02-06T08:51:29.720-06:00”,
更新日期:“2012-02-06T08:51:29.720-06:00”
},
{
“id”:101,
“账户id”:8,
“名称”:“停止服务”,
“默认”:false,
“创建时间”:“2012-02-06T08:51:29.720-06:00”,
更新日期:“2012-02-06T08:51:29.720-06:00”
},
]
const result=data.map(obj=>obj.id)
console.log(result)
您也可以使用Array.reduce,尽管我不确定与Yosvel的map方法相比有什么好处:
const数据=[
{
“id”:100,
“账户id”:8,
“名称”:“停止服务”,
“默认”:false,
“创建时间”:“2012-02-06T08:51:29.720-06:00”,
更新日期:“2012-02-06T08:51:29.720-06:00”
},
{
“id”:102,
“账户id”:8,
“名称”:“停止服务”,
“默认”:false,
“创建时间”:“2012-02-06T08:51:29.720-06:00”,
更新日期:“2012-02-06T08:51:29.720-06:00”
},
{
“id”:105,
“账户id”:8,
“名称”:“停止服务”,
“默认”:false,
“创建时间”:“2012-02-06T08:51:29.720-06:00”,
更新日期:“2012-02-06T08:51:29.720-06:00”
},
]
const res=data.reduce(
(acc,val)=>{
返回[…acc,val.id]
},
[]
)
console.log(res)
//数据
是您的对象,键
是您想要提取的内容,就像箭头函数(=>
)的id一样
使用:
使用?这是Java问题还是JavaScript问题?这些是非常不同的语言,你知道。java脚本。Java用于标记。请阅读:
const extractFieldArray = (data, key) => data.map(d => d[key]);
function testIt()
{
var sample = [
{
"id":100,
"account_id":8,
"name":"Out of Service",
"default":false,
"created_at":"2012-02-06T08:51:29.720-06:00",
"updated_at":"2012-02-06T08:51:29.720-06:00"
},
{
"id":101,
"account_id":8,
"name":"Out of Service",
"default":false,
"created_at":"2012-02-06T08:51:29.720-06:00",
"updated_at":"2012-02-06T08:51:29.720-06:00"
},
];
var result = sample.map(function(elt) { return elt.id; });
Logger.log(result); // [100.0, 101.0]
}