JSON.Stringify replacer函数无法获取键值

JSON.Stringify replacer function not able to get key value

本文关键字:获取 键值 函数 Stringify replacer JSON      更新时间:2023-09-26

我正在使用JSON.stringify及其replacer参数。但在replacer参数中,我无法获取键值,而是将键值作为空字符串",将值作为完整的JSON对象。我在代码中犯了什么错误?请清空。

var replacer=function(key,value){
        debugger; 
    }
    $(function () {
       JSON.stringify({"name":'xxxxx'},replacer)
    });

我需要将密钥取为"name",将值取为"xxxxx"

MDN-JSON.stringfy():替换器参数:

[…]最初,它被用一个表示被字符串化对象的空键调用,然后它被为被字符串化的对象或数组上的每个属性调用。[…]

在第一次迭代中,您将整个对象CCD_ 1作为CCD_,但是,因为从替换函数返回undefined,所以整个对象将被undefined替换,因此不会进行具有值/键对的下一次迭代。

如果您返回value,您将看到下一次迭代正在进行。

var replacer = function(key, value) {
  console.dir(arguments);
  return value;
}
JSON.stringify({
  "name1": 'xxxxx'
}, replacer);
var replacer=function(key,value){
    var json_obj = JSON.parse(value);
    var name = json_obj.name;
}
$(function () {
   JSON.stringify({"name":'xxxxx'},replacer)
});