【发布时间】:2015-03-25 11:26:09
【问题描述】:
我有一个简单的 javascript 对象,其中包含一些设备信息,包括最后已知的地理位置(仅限经度和纬度)。我正在使用 JSON.stringify 将此对象转换为 JSON,但我拥有的一个不是布尔值/文本/数字的变量会被忽略。
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 并将其保留为虚拟信息时仍然不包含它。
【问题讨论】:
-
登录
this.userLocation有什么收获吗?
标签: javascript android json titanium titanium-alloy