2016-04-06 25 views
1

Birkaç sınama ve aramadan sonra, bir JSON ayrıştırıldıktan sonra gezinmek için bir yol bulamıyorum; Burada sonrası ayrıştırma sonucudur:Javascript - Object int olarak dahil JSON ayrıştırma

Object {documentation: "https://geocoder.opencagedata.com/api", licenses: Array[2], rate: Object, results: Array[1], status: Object…} 

dokümantasyon : "https://geocoder.opencagedata.com/api" lisans : Dizisi [2] oranı : Nesne sonuç : Dizisi [1] : Nesne ek açıklamaları : Nesne bileşenleri : Nesne bina: "C" şehir : "Bordo" ülke : "Fransa" COUNTRY_CODE : "fr" ilçe : "Bordo" posta kodu : "33000" yol : "Quai de Bacalan" devlet : "Aquitaine" banliyö

var locname = response.status.code; 

Ama durum böyle Nesne olarak int vardır:

: Aşağıdaki kod ile tepki değerini elde edebilirsiniz Örneğin "Bordo Denizcilik"

var locname = response.results.0.formatted; 

aşağıdaki hatayı vardır:

Uncaught SyntaxError: Unexpected number

Karakterden kaçmaya çalışıyorum, alıntı koyarım, vs ama hiçbir çözüm bulamadım. sonuçların yana

cevap

0

aşağıdaki sözdizimini kullanmalıdır bir dizidir:

var locname = response.results[0].formatted; 

yerine javascript

var locname = response.results.0.formatted; 
+0

Çok teşekkür ederim, bu mükemmel çalışıyor; Ben bir noob'um. – bubu

+0

Bubu harika, o zaman lütfen soruyu cevap olarak işaretleyin :) –

+0

Yeni hesabımdan dolayı bir cooldown'um var ama ben ;-) – bubu

1

örneğin, bir var bu yüzden, bir nesne, ayrıca dizi olarak erişilebilir Bu gibi bir nesne: t-olmayan bir şey olmadığı sürece tüm anahtar kabul edilir. şapka özel karakterler içerir (- + =! vb) ve numara ile başlamadı. Her durumda, bu istisnayı karşılamayan alana sahip olursunuz, o zaman dizi-dizi olarak erişmeniz gerekir. , değeri dizi ile aynı şekilde atayabilir ve ayrıca bu alanın içeriğini alabilirsiniz.durumunda

Eğer Ardından ihtiyacınız şey

var locname = response.results[0].formatted; 

Bu içerikle

<script> 
    var obj = {name: 'Hans Yulian', age: 21, message: 'Handsome'}; 
    obj[0] = 'This is an number index'; 
    obj['message'] = 'Too Handsome'; 
    obj[1] = {}; 
    obj[1].name = 'Handsome'; 
    obj.handsome = []; 
    obj.handsome[0] = {}; 
    obj.handsome[0].hansyulian = 'So Handsome'; 

    console.log(obj); 
    console.log(obj[1].name); 
    console.log(obj.handsome[0].hansyulian); 
</script> 

bir html dosyası yapmak deneyebilirsiniz olduğunu

var locname = response.results.0.formatted; 

gibi bir şey erişmesi gereken ve anlamanız için konsolu gör (sağ tıkla, elemanı denetle, google chrome için konsolu seç) Orada ne olur

+0

Teşekkürler Hans, bana cevap vermek için zaman ayırın; Bu konuya derinliklerine gireceğim! – bubu