SORU
24 AĞUSTOS 2013, CUMARTESİ


En az geçerli JSON nedir?

Dikkatle 11 ** JSON açıklama okudum ama basit sorunun cevabını bildiğimden emin değilim. Dizeleri mümkün olduğunca az geçerli JSON nedir?

  • "string" dize geçerli JSON mi?
  • 42 basit sayı geçerli JSON mi?
  • 2* *Boole değeri geçerli bir JSON mi?
  • {} boş nesne geçerli bir JSON mi?
  • [] boş dizi geçerli bir JSON mi?

CEVAP
24 AĞUSTOS 2013, CUMARTESİ


Yazma zamanda, JSON sadece RFC4627 olarak nitelendirildi. Açıklar (başında "2") seri nesne ya da bir dizi olarak JSON bir metin.

Bu anlamına gelirsadece{} [] standart uymak ayrıştırıcıları ve stringifiers içinde geçerli, tam JSON dizeleri.

AncakECMA-404 giriş ve güncellenen tavsiyeler can be read here değiştirir. Ayrıca bu konuda written a blog post ettim.


Karıştırmak için olayı ancak JSON nesne (örneğin JSON.parse() JSON.stringify()) mevcut web tarayıcıları standardised in ES5 ve açıkça tanımlar kabul edilebilir JSON metin şöyle:

JSON değişim biçimi bu özellikleri kullanılan tam olarak bu iki istisna dışında RFC 4627 tarafından açıklanmıştır:

  • Üst düzey ECMA JSON dilbilgisi üretim JSONObject veya RFC 4627 belirtildiği gibi bir JSONArray olmakla sınırlı olmak yerine herhangi bir JSONValue oluşabilir JSONText.

  • sünnet olmadım

Bu anlamına gelirtümJSON değerleri (dizeleri, boşluk ve numaraları dahil) JSON nesne teknik olarak RFC 4627 yapışır olsa da JSON nesnesi tarafından kabul edilir.

Bu nedenle belirli istisna yukarıda listelenen olmayan bir RFC4627, ama uygun bir ayrıştırıcı tarafından reddedilmiş olan JSON.stringify(5) ile uyumlu bir tarayıcı sayıda stringify, unutmayın. Ruby, örneğin, would seem to be one such example which only accepts objects and arrays as the root. PHP, diğer taraftan, specifically adds the exception "de ve skaler tipleri ve NULL kodlama olacak".

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Gali B

    Gali B

    1 EYLÜL 2006
  • Paul Schroder

    Paul Schrode

    30 Kasım 2007
  • JeezyVEVO

    JeezyVEVO

    12 Mayıs 2009