Wednesday, April 6, 2011

Suggested Improvements to JSON

Today I'm publishing an essay about my suggested improvements to JSON. I really like JSON a lot, but I think that it could use a few tweaks to make it easier to use for the common man.

One question some have asked is: even if these changes to JSON were accepted, how would you transition existing systems? I would lean towards what I call the Nike approach, which is: "just do it." That is, start updating the JSON.parse() method in the browser to accept these extensions to JSON. What I am proposing is a strict superset of what's in RFC 4627 today (which you may recall claims that "[a] JSON parser MAY accept non-JSON forms or extensions"), so it would not break anyone who continued to use ES3 style JSON.

At first, you may think that sounds ridiculous -- how could we update the spec without versioning? Well, if you haven't been paying attention to the HTML5 movement, we are already doing this sort of thing all the time. Browser behavior continues to change/improve, and you just have to roll with the punches. It's not ideal, but yet the Web moves forward, and it's faster than waiting for standards bodies to agree on something.

Though if the Nike approach is too heretical, then I think that versioning is also a reasonable option. In the browser, a read-only JSON.version property could be added, though I don't imagine most developers would check it an runtime, anyway. Like most things on the web, a least-common-denominator approach would be used by those who want to be safe, which would ignore the version number. Only those who do user-agent sniffing on the server would be able to serve a slimmer JavaScript library, though that is already true for many other browser features today. I trust Browserscope and much more than any sort of formal specification, anyway.

Special thanks to Kushal, Dolapo, and Mihai for providing feedback on my essay.


  1. ฝาก ถอน ตลอด 24 ชั่วโมง โปรโมชั่น 20รับ100 ทํา 200 ถอนได้100

  2. "เกมสล็อตออนไลน์ บนมือถือที่มีเกมให้เลือกเล่นมากมาย"Betflix888"เล่นง่ายฝากถอนด้วยระบบออโต้ไม่ยุ่งยากมีแอดมินคอยดูแลตลอด 24ชั่วโมง"

  3. Rcg168 เกมสล็อตผู้กำกับการน้ำแข็งและไฟ เกมสล็อตเว็บตรงจากค่าย PG Slot rcg168

  4. Rix789 เว็บเราก็ยังมีเกมคาสิโนออนไลน์ อีกมากมาย ไว้รองรับท่าน ได้สัมผัสความสนุก สล็อตแตกง่าย

  5. Pgslot-ogz slot game from PG camp. Ice and Fire director slot game. pgslot เว็บตรง

  6. เท่าไหร่ก็ฝากได้ ปรับอัตราแตกเพิ่ม ให้อีก 99 % แจกสูตรสล็อต/บาคาร่า ฟรี ทุนน้อยก็เล่นได้มีครบทุกสายปั่น เรามีทุกค่ายเกมให้เลือกเล่นมากกว่า 1000 เกมส์ สล็อตเว็บตรง มากับสูตรใหม่ สุดปัง เเม่นยำ เเน่นอน สล็อตก็แตกดีจัด สนใจได้กำไรเน้นๆรีบสมัครเลย สล็อตโรม่า