2016-01-11 27 views
1

我想设置的纬度,经度,以JSON值,如何将JavaScript变量设置为静态json数据?

var lat = position.coords.latitude; 
var long =position.coords.longitude; 

而且我想这个变量设置为下面的代码,你可以帮我做我该怎么办?

var nooGmapL10n={"lottitude":+lat+,"longitude":+lons+} 

它显示了一些错误,请帮助我。

回答

0

最好用JSON Object来得到json的字符串。

使用下面的代码通过JSON Object形成JSON:

var lat = position.coords.latitude; 
var long =position.coords.longitude; 
var nooGmapL10n={"lottitude": lat,"longitude": long}; 
var jsonData = JSON.stringify(nooGmapL10n); 

要形成JSON字符串没有JSON Object(不推荐的方法)使用下面的代码:

var lat = position.coords.latitude; 
var long =position.coords.longitude; 
var nooGmapL10n='{"lottitude":' + lat + ',"longitude":' + long + '}'; 

上面,你会得到所需的执行代码之后json对你的对象的拒绝。

更新在对该答案的评论中推荐了一些其他修复程序。

+0

不,我试了一下不能正常工作.. –

+0

不,我发短信只有“长”,当我检查并获取页面源时,它显示nooGmapL10n = {“lottitude”:lat,“longitude”:long};'但它应该显示'nooGmapL10n = {“lottitude “:15.25478,”经度“:16.25488};'就像那个r ight .. –

+0

这是因为在第一种情况下,您的json字符串在'jsonData'变量中。为了让它进入'nooGmapL10n'更新'jsonData = JSON.stringify(nooGmapL10n);'到'nooGmapL10n ='JSON.stringify(nooGmapL10n);' –

0

我注意到一些错别字,并纠正它们。试试这个:

var lat = position.coords.latitude; 
var long = position.coords.longitude; 

var nooGmapL10n={ "latitude": lat, "longitude": long } 
+0

如果你想用JSON发送,你应该使用var dataToSend = JSON.stringify(nooGmapL10n) –

+0

不,我试过它不工作.. –

0
var nooGmapL10n={"lottitude":+lat+,"longitude":+lons+} 

应改为:

var nooGmapL10n={"lottitude":lat,"longitude":lons} 

没有 “+”,因为nooGmapL10n不是一个字符串,但对象;)

+0

不,它不工作.. –