当前位置:  开发笔记 > 编程语言 > 正文

JSON.stringify()无法正常工作 - 第二个参数消失

如何解决《JSON.stringify()无法正常工作-第二个参数消失》经验,为你挑选了1个好方法。

我有以下对象:

var message = {

    default: 'Default',

    GCM: {

        data: {
            title: titleMessage,
            text: textMessage
        }
    }
};

当我意识到:

message.GCM = JSON.stringify(message.GCM);

变量message.GCM获取以下值:

{"data":{"title":"titleMessageValue"}} 

代替:

{"data":{"title":"titleMessageValue", "text":"textMessageValue"}} 

为什么它会忽略我的数据对象中的第二个变量?如何在不丢失任何变量的情况下进行字符串化



1> Mike Cluck..:

textMessage很可能undefined.

var msg = {
  title: 'titleMessage',
  text: 'textMessage'
};
JSON.stringify(msg); // Both properties are there
msg.text = undefined;
JSON.stringify(msg); // `text` is missing

如果未定义,则在转换期间遇到函数或符号,或者省略(当在对象中找到它)或者删除为null(当它在数组中找到时).

资料来源:MDN

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有