2011-01-28 17 views
21

İlk olarak, Javascript aleminde yeni bir kullanıcıyım. Ben aşağıdaki gibi, bir JSON dosyası vardır: ben sadece JSON dosyalarına dizeleri kodlamak için yollar bulmaya senaryom içine bu dosyayı geri getirebilir nasılJSJ dosyası javascript'te nasıl kullanılır

{"markers": [ 
    { 
    "abbreviation": "SPA", 
    "latitude":-13.32, 
    "longitude":-89.99, 
    "markerImage": "flags/us.png", 
    "information": "South Pole", 
    }, 

.... lots more of these in between .... 

{ 
    "abbreviation": "ALE", 
    "latitude":-62.5, 
    "longitude":82.5, 
    "markerImage": "flags/us.png", 
    "information": "Alert", 
    }, 
] } 

ben çok araştırma yapıyor. Temelde,

object data = filename.json 
document.write(data.markers.abbreviation[1]) 

Birisi bana bunu hakkında gitmek ile ilgili açık talimat verebilir misiniz (bu değil nasıl size kodudur biliyorum) ... böyle bu javascript aracılığıyla dosyayı, bir şeyler okumak istiyorum. Unutmayın, ben javascript jargon ile eşit olmayacağım beri bir yeni gelen ve özelliklerine ihtiyacım var.

cevap

48

Önce bir dosyada tanıtıcıya ihtiyacınız var. Bir şekilde ya ajax yoluyla ya da sunucu tarafında davranış yoluyla elde etmelisiniz.

Dosyanın nerede olduğunu söylemelisiniz. Bunu nasıl almayı planladığınızı ve hangi sunucu kodunun kullanıldığını kodlayın.

Bir kez JSON.parse(string) kullanabilirsiniz. Eski tarayıcıları desteklemeniz gerekiyorsa json2.js dosyasını ekleyebilirsiniz.

jQuery'yi kullanırsanız, bunun yerine ayrıştırma için 'u da deneyebilirsiniz.

Eğer jQuery.ajax veya Ajax.Request gibi ajax işlevselliği ile kütüphanenin JSONP veya çeşit kullanabilirsiniz ya da yüklemek için jQuery.getJSON

kullanarak olurdu uzaktan alma json için bir seçenek. Ham javascript ile yapılabilir, ancak bu çirkin ve tekerleği yeniden icat ediyor.

$.getJSON("document.json", function(data) { 
    console.log(data); 
    // data is a JavaScript object now. Handle it as such 

}); 
+3

Tartıştığı kütüphanelere bağlanmışsa bunu kabul etmeliyim. – Quentin

+2

@DavidDorward onlara bağlanır. Gerçekten .js'nin dosyalarına doğrudan bağlantıya ihtiyacım var mı? – Raynos

+0

Bu yorumu yazdığımda bağlantılar görünmüyordu. – Quentin

İlgili konular