JSON 字符串化从对象中删除数据
JSON Stringify Removing Data From Object
我正在努力通过 jQuery ajax 将 JSON 发送到节点服务器。我的 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 = [];
}
谢谢,
嗯,问题是您正在创建 AN ARRAY 然后继续像处理对象一样处理它。
使用
user.regions[a] = {};
相反。
发生的事情是 JSON.stringify
看到有一个数组,尝试遍历它没有的数字索引,所以结果是一个空数组。
JSFiddle 上的示例:http://jsfiddle.net/Le80jdsj/
我正在努力通过 jQuery ajax 将 JSON 发送到节点服务器。我的 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 = [];
}
谢谢,
嗯,问题是您正在创建 AN ARRAY 然后继续像处理对象一样处理它。
使用
user.regions[a] = {};
相反。
发生的事情是 JSON.stringify
看到有一个数组,尝试遍历它没有的数字索引,所以结果是一个空数组。
JSFiddle 上的示例:http://jsfiddle.net/Le80jdsj/