javascript - 修改JS中的初始对象值
问题描述
我有一个代码来获取下一个数组:
const arr = [
{
name:'',
age:55
},
{
name:'Bill',
age:''
},
]
..我应该考虑到,如果键不包含值,我应该为该键输出值:no data
;
最后我应该得到这样的东西:
const arr = [
{
name:'no data',
age:55
},
{
name:'Bill',
age:'no data'
},
]
我做的:
const arr = [
{
name:'',
age:55
},
{
name:'Bill',
age:''
},
]
const func = (arr) => {
const myKeys = arr.map(k => Object.keys(k))
return arr.map((i, k1) => {
return myKeys[k1].reduce((acc,r )=> {
return {
[acc] : !i[r].toString().length ? 'no data' :i[r]
}
})
})
};
console.log(func(arr))
如何实现我上面描述的?
解决方案
不确定我是否理解您的问题,但这似乎有效:
const arr = [
{
name:'',
age:55
},
{
name:'Bill',
age:''
},
]
arr.forEach(item => {
for(let key in item) {
if(!item[key]) item[key] = 'no data';
}
});
console.log(arr);
推荐阅读
- tensorflow - 我可以在 2.0 计算 NN 输出 wrt 输入的 autograd 中重新创建 tf1.0 代码吗?
- python - 为什么 jinja2 过滤“tojson”排序键?
- c++ - C++、GDB:无法评估函数——可能是内联的
- python-3.x - 如何在拥有 python3 的同时使用 pip 安装 python2 包?
- c++ - 在 C++ 中,如何编写一个在指定位置翻转二维数组的函数?
- javascript - 如何使数据出现在折线图Chart.js的最右边
- node.js - 如何从节点 js 的本地上传文件夹中获取视频的持续时间?
- python - 试图用随机数据填充表但收到空集
- javascript - React JS - 无法在尚未安装的组件上调用 setState
- java - 在 EDT 上调用 Container#validate 是强制性的吗?