javascript - 如何根据角度值创建嵌套 JSON
问题描述
我做了一个 API 调用,然后我收到了一个 JSON,我需要根据它们的值修改那个 JSON,例如:如果一个 id 等于 0
我发现实现这一点的唯一方法是添加多个if
语句,我想通过一个函数动态地做到这一点
这是我的 JSON
{
"Last_Scanned": 1,
"Prefix_Title": 1 ,
"First_Name": 0,
"Family_Name": 1,
"Job_Title": 1,
"Company": 0,
"Address_1": 1,
"Zip_Code": 1,
"City": 1,
"Country_Code": 0
}
这就是我试图通过值等于 0 的值进行过滤的方式,这response
是原始值json
let selectedfield:any = [response]
selectedfield.forEach(element => {
avoidFields = selectedfield.map((x:any) => {
if(x.Last_Scanned== 0){
avoidFields.push(Object.keys(x.Person_Id))
console.log(Object.keys(x))
}
})
})
我正在寻找的结果是有这样的东西
{
"First_Name": 0,
"Company": 0,
"Country_Code": 0
}
OR
{
"First_Name",
"Company",
"Country_Code"
}
解决方案
这是否满足您想要做的事情?
// sample entry.
let sampleObject = {
"Last_Scanned": 1,
"Prefix_Title": 1 ,
"First_Name": 0,
"Family_Name": 1,
"Job_Title": 1,
"Company": 0,
"Address_1": 1,
"Zip_Code": 1,
"City": 1,
"Country_Code": 0
};
// destination object.
let newObject = {};
// iterate through the object properties.
for (let prop in sampleObject) {
// add to the new object if value is zero.
if (sampleObject[prop] === 0) {
newObject[prop] = 0; // or any value you want to set.
}
}
console.log(newObject);
推荐阅读
- java - 如何将 Camunda 业务错误抛出?
- javascript - 表单提交后删除下拉选择
- hyperledger-fabric - 超级账本浏览器 | 开始.sh | ssl_transport_security | SSL3_GET_RECORD
- wpf - 在按钮单击事件上填充组合框
- javascript - 当值无效时,Joi 使用默认值
- r - blogdown / hugo 中的 YMLto html 表
- lilypond - 重复同一个音符 n 次
- c# - Xamarin iOS 在 Xamarin 表单中获取连接的蓝牙设备名称
- android - 安装后android studio缺少预览布局
- react-native - 本地运行 react native 应用失败