当我在Parse.com查询对象上使用JSON.stringify时,它只包含“属性”而忽略其余部分。如何对整个对象进行字符串化?
// load races from Parse var Events = Parse.Object.extend("Events"); var query = new Parse.Query(Events); query.equalTo("theYear", currentYear); query.ascending("sortOrder"); query.find({ success: function(results) { forgeLog("Got "+results.length+" Events from Parse"); forgeLog("First object in array logged directly:"); forgeLog(results[0]); forgeLog("First object in array with stringify:"); forgeLog(JSON.stringify(results[0])); }, error: function(error) { forgeLog("Error getting Events from Parse"); } });
{ attributes: { Name: 'McCalls Motorworks', raceId: '0', sortOrder: 2, theYear: 2012 }, _operations: {}, _dirty: {}, _hashedJSON: {}, _escapedAttributes: {}, cid: 'c0', id: 'To6lLjzwQw', createdAt: '2012-08-09T13:51:29.259Z', updatedAt: '2012-08-10T13:23:07.280Z', _setting: false, _previousAttributes: { Name: 'McCalls Motorworks', raceId: '0', sortOrder: 2, theYear: 2012 } }
{"Name":"McCalls Motorworks","raceId":"0","sortOrder":2,"theYear":2012}
更新:我实际上只是测试了自己,当我通过剪切和粘贴第一个对象并自己定义变量来手动定义对象时,它可以正常工作。但是,当我在从Parse接收结果后直接对结果进行字符串化(如示例代码中)时,它只返回属性部分...但是第一个对象是我在尝试从Parse中记录结果之前直接从我的控制台复制的对象字符串化。
答案 0 :(得分:0)
我已经检查了很多浏览器,但是一切正常,手动没有任何问题
我认为您在JSON.stringify
中直接设置解析器值有时会出现 js
尝试在某个对象中初始化它并在JSON.stringify
中传递该对象可能有效
答案 1 :(得分:0)
Parse的Héctor能够向我解释:
这是因为createdAt,objectId,updatedAt不是属性。 它们是对象本身的属性,因此它们不被选中 通过JSON序列化程序。