Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 替换JSON中数组中的键和字符串_Javascript_Node.js - Fatal编程技术网

Javascript 替换JSON中数组中的键和字符串

Javascript 替换JSON中数组中的键和字符串,javascript,node.js,Javascript,Node.js,我有以下的JSON: { "class": "List", "list": [{ "name": "HandsUp" "schedule": { "type": "probability", "them

我有以下的JSON:

{
    "class": "List",
    "list": [{
            "name": "HandsUp"
            "schedule": {
                "type": "probability",
                "theme": "Regular",
                "occurance": {
                    "next": 1607687249008.9834,
                    "prev": null
                }
            }
        }, {
            "name": "Listing",
            "waitingScreenInfo": {
                "__class": "WaitingScreenInfo",
                "getRecapTime": 1607687753.7949834
            },
            "schedule": {
                "type": "Waiting2",
                "theme": "Listing",
                "occurance": {
                    "next": 1607687249008.9834,
                    "prev": null
                }
            }
        }
    ]
}
我有一个:

{
    "HandsUp": "HandsDown",
    "Listing": "ImgList",
    "Waiting2": "UpNDown"
}

第一个JSON中字符串的等价物在第二个JSON中,我想知道如何创建一个函数,在第一个JSON中找到字符串的等价物,然后替换所有字符串,即使存在多个字符串?

您可以这样做

  • 浏览阵列
  • 检查属性名是否等于“repl”对象中的键
  • 如果是,则用“repl”对象中的值重新指定
let stru={
“类”:“列表”,
“名单”:[{
“姓名”:“握手”,
“附表”:{
“类型”:“概率”,
“主题”:“常规”,
“发生”:{
“下一个”:1607687249008.9834,
“prev”:空
}
}
}, {
“名称”:“列表”,
“waitingScreenInfo”:{
“_类”:“WaitingScreenInfo”,
“getRecapTime”:1607687753.7949834
},
“附表”:{
“类型”:“等待2”,
“主题”:“上市”,
“发生”:{
“下一个”:1607687249008.9834,
“prev”:空
}
}
}]
}
常数repl={
“上交”:“下交”,
“列表”:“ImgList”,
“等待2”:“向上”
}
console.log(“之前”,stru)
stru.list.forEach(元素=>{
//键和值在索引处对应
让keys=Object.keys(repl);
让value=Object.values(repl);
for(设i=0;iconsole.log(“after”,stru)
是否要将第一个JSON中作为属性存在于第二个JSON中的值替换为第二个JSON中的值?那么,您需要在哪里替换任何键呢?这比仅仅替换值要复杂一些。您的示例数据表明您可能只需要后者。是的,Henning,这就是我要说的。@CBore,很抱歉,我没有在第一个JSON中显示它。实际上也有一些钥匙需要更换。