【问题标题】:JSON Stringify Removing Data From ObjectJSON Stringify 从对象中删除数据
【发布时间】:2015-03-13 08:30:38
【问题描述】:

我正在通过 jQuery ajax 将 JSON 发送到 Node 服务器。我的 jQuery ajax 正在工作。见下文。

var user = JSON.stringify(userObject);
$.ajax({
        type: 'POST',
        url: 'http://localhost:5000/save',
        contentType: 'application/json',
        dataType: 'json',
        data: user
    })
    .done(function(data) {
        console.log(data.link, 'here is the link');
        callback(data.link);
    })
    .fail(function(err) {
        console.log(err);
        callback(err);
    });

我的问题是,当我控制台登录用户时,一个已被字符串化的 json 对象,我在数组中的信息正在丢失。我丢失的对象部分看起来像这样。

它在控制台中显示为这样:

存储在父用户对象内的这些数组中的信息没有被存储。任何关于为什么会这样的建议都会有所帮助。如果您有任何替代方法可以用来通过 jQuery ajax 发送此数据结构,请告诉我。

编辑 这里是创建区域的地方:

// Add regions to the bracket layout object
        user.regions = [];
        for (var a = 0; a < 2; a++) {
            user.regions[a] = [];
            user.regions[a].columns = [];
        }

谢谢,

【问题讨论】:

  • 你为什么首先JSON.stringify?
  • 控制台图片显示两个数组都是空数组,元素为零。
  • 这些都没有意义。请用完整的细节更新问题
  • 截图是什么?你是如何以及从哪里得到它的?
  • 继续向我们展示区域...但是发送的数据是用户...我投票关闭,因为您只是没有连接任何点。把正确的问题描述放在一起

标签: javascript jquery ajax json


【解决方案1】:

好吧,问题是您正在创建 AN ARRAY,然后继续使用它,就像使用对象一样。

使用

user.regions[a] = {};

改为。

发生的情况是 JSON.stringify 看到有一个数组,尝试迭代它没有的数字索引,因此它导致一个空数组。

JSFiddle 示例:http://jsfiddle.net/Le80jdsj/

【讨论】:

  • 我认为这可能是问题所在。好的!感谢您的时间和耐心!
猜你喜欢
  • 2016-02-19
  • 2012-02-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-30
  • 1970-01-01
  • 2023-02-15
  • 2020-05-03
相关资源
最近更新 更多