javascript - 如何 JSON 化 javascript 对象的属性

我正在“手动”运行我的 javascript 类的属性以形成 JSON,如下所示。感觉很笨拙,我想学习如何自动执行此操作,因此例如,如果我添加或删除任何属性,我就不必弄乱“toJson”函数。

一个有用的头脑能否为我指明正确的方向,如何调整下面的“toJson”函数来实现这个目的?

非常感谢。

/* Using Simple JavaScript Inheritance
* By John Resig http://ejohn.org/
* MIT Licensed.*/
var LogEntry = Class.extend({
    init: function (_conferenceId, _tokenId, _logType, _logValue) {
        this.dato = new Date();
        this.logValue = _logValue;
        this.logType = _logType;
        this.conferenceId = _conferenceId;
        this.tokenId = _tokenId;
    },
    toJson: function () {
        // ?
        var jsonStringBuilder = '{ ';
        jsonStringBuilder += '"dato": ' + this.dato.toString() + ',';
        jsonStringBuilder += '"conferenceId": ' + this.conferenceId + ',';
        if (this.tokenId== null) {
            jsonStringBuilder += '"tokenId":null,';
        }
        else {
            jsonStringBuilder += '"tokenId": ' + _tokenId + ',';
        }
        jsonStringBuilder += '"logValue": ' + this.logValue + ',';
        jsonStringBuilder += '"logType": ' + this.logType;
        jsonStringBuilder += '}';

        return jsonStringBuilder;
        }
});

最佳答案

JSON.stringify是您要查找的函数。

一些 very old browsers本身不提供 JSON 对象,但您可以使用 a shim library对于那些浏览器。

https://stackoverflow.com/questions/19234547/

相关文章:

javascript - 列表/数组是有效的 JSON 吗?

json - 在 JSON 中序列化 base64 编码的数据

php - 如何使用 PHP 更新/编辑 JSON 文件

.net - JSON.NET JsonConvert 与 .NET JavaScriptSeria

java - 反序列化时忽略属性

java - JSON 和 BSON 哪个更轻量级?

json - 使用 Elasticsearch 搜索多个字段

c# - 如何使JSON.NET忽略对象关系?

java - 使用 jackson JsonNodeFactory 的最佳方式

java - JSON 对象中值的顺序是否重要?