源数据:
config:{
paper:{
id:require('tools/rand-str')(),
title:'-',
selector:['-','-','-'],
val:1
},
paint:{
id:require('tools/rand-str')(),
title:'-',
selector:['-','-'],
val:1
}
optimize:{
id:require('tools/rand-str')(),
title:'-',
emphasis:true,
selector:['-','-'],
val:0
}
}
目标数据:
val:{
paper:1,
paint:1,
optimize:0
}
id:{
paper:'rXTUtK',
paint:'r8LizN',
optimize:'rfIpES'
}
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
哪里需要用 lodash,原生脚本就解决了
如果需要所有属性,而不只是
val和id,可以把["val", "id"]换成Object.keys(options)。如果用 lodash,大概会用到它的
transform,其实和原生的reduce也差不多。又翻了一遍 lodash 文档,找到了这个函数:
_.mapValues一行命令解决需求:
_.mapValues(config, function(v) { return v.val; })