gpt4 book ai didi

javascript - JSON.stringify 忽略我的嵌套对象

转载 作者:行者123 更新时间:2023-12-03 10:30:12 42 4
gpt4 key购买 nike

我有一个简单的 JavaScript 对象,其中包含一些设备信息,包括最后已知的地理位置(仅经度和纬度)。我正在使用 JSON.stringify 将此对象转换为 JSON,但我拥有的一个不是 boolean/text/number 的变量会被忽略。

exports.CallContext = function() {
var deviceId;
var applicationId;
var userLocation = {lat:0, lon:0};
var operatingSystem;

this.create = function(b) {
this.deviceId = Titanium.Platform.id;
this.applicationId = Alloy.Globals.appId;
Titanium.Geolocation.getCurrentPosition(function(e) {
if(e.error) {
Ti.API.info(e.error);
} else {
this.userLocation = {lat:e.coords.latitude, lon:e.coords.longitude};
}
});
this.operatingSystem = Titanium.Platform.version;
};
};

执行JSON.stringify(myCallContext);后,我得到一个带有deviceId、applicationId和operatingSystem(等等,有些被省略)的JSON对象,不知道为什么它不包括userLocation。尝试将其转换为数组,但仍然不起作用,并且当我摆脱 getCurrentLocation 并将其保留为虚拟信息时仍然不包含它。

最佳答案

您必须在嵌套对象内实现 toJSON() 函数才能将它们正确序列化为 JSON 格式

更多信息here

关于javascript - JSON.stringify 忽略我的嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29254339/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com