我在React SPA中返回一个响应。响应如下所示:
我的愿望是遍历此json并评估每个键的值。我要替换“ 00/00/0000”和空值“-”。我以为可以使用.map函数,但是似乎可以找到可以完成我要完成的工作的任何代码示例。 for循环对我也不起作用。我需要查看每个值,因为我不知道哪个值可能会有空值或疯狂的日期。任何帮助,将不胜感激。
答案 0 :(得分:2)
例如,如果var block = await web3js.eth.getBlock("latest");
var gasLimit = block.gasLimit/block.transactions.length;
包含响应,则
response
您可以通过多种方式来执行此操作,但是
function mapIt(obj){
let newObj = {};
for(let k in obj){ // similar to Object.keys(obj)
// or your default logic to change the value
// you could do
// if (k == "something"){
// do things differently
// }
newObj[k] = shinyFilterFunction(obj[k]);
}
}
循环对我来说看起来更干净。
答案 1 :(得分:2)
您可以使用Object.keys(obj).map(...)
来迭代对象。
当您需要最终结果作为对象时,可以对对象执行.map()
并检查条件并返回对象内部每个属性的更新值。
按以下方式工作代码段,
const obj = {
"empId": "2222",
"empFName": "Jack",
"empLName": "Smith",
"empHireDate": "10/1/2000",
"empTermDate": "00/00/0000",
"empHRCode": ""
}
Object.keys(obj).map(item => {
if(obj[item] && obj[item] !== "00/00/0000"){
return obj[item];
} else {
return obj[item] = "-";
}
});
console.log(obj)