JSON Stringify从对象中删除数据

Max*_*win 4 javascript ajax jquery json

我正在努力通过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);
    });
Run Code Online (Sandbox Code Playgroud)

我的问题是,当我控制日志用户,一个已经被字符串化的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 = [];
        }
Run Code Online (Sandbox Code Playgroud)

谢谢,

zer*_*kms 8

好吧,问题是你正在创建一个ANARRAY然后继续使用它与对象一样.

使用

user.regions[a] = {};
Run Code Online (Sandbox Code Playgroud)

代替.

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

关于JSFiddle的例子:http://jsfiddle.net/Le80jdsj/