Ajax เป็นเทคโนโลยีที่ทำให้เว็บของเรามีชีวิตชีวามากขึ้น กว่าเว็บที่เราเคยใช้กัน
เดิมทีเว็บที่เราเขียนด้วย HTML มันแก้ไขอะไรไม่ได้เลย
เปิดมากี่ทีๆ ก็เหมือนเดิมตลอด ให้มีชีวิติชีวากว่านั้นก็อาจจะใช้ CGI หรือ PHP ,JSP มาช่วยก็ทำให้หน้าเว็บที่เปิดมาเปลี่ยนแปลงไปได้ตามข้อมูลที่เราให้
( + อื่นๆ ) เพื่อเพิ่มชีวิตชีวามากกว่านั้นเรายังสามารถใช้ Javascript
ที่ทำให้หน้าเว็บเปลี่ยนแปลงไปได้ต่อหน้าต่อตาโดยไม่ต้อง load
หน้าใหม่เลย
... แต่ทว่า อย่างไรก็ตาม การใช้ Javascript ก็ยังจำกัดอยู่เนื่องจากไม่สามารถไปเรียกข้อมูลจาก Server ได้ ... ดังนั้น Ajax จึงมีบทบาทในการช่วยใช้ javascript บน web browser เช่น IE และ Firefox,Chome etc. แลกเปลี่ยนข้อมูลกับ web server ได้ และแก้ไขหน้าเว็บเดี๋ยวนั้นโดยไม่ต้อง load หน้าใหม่
ปกติรูปแบบข้อมูลที่ใช้ในการแลกเปลี่ยนข้อมูลของ Ajax ก็คือ XML แต่กระนั้นเราก็ต้องมีท่าต่างๆ นานาเพื่อใช้ในการจัดการ xml อีก จะดีกว่าหรือไม่ถ้าหากเราส่งผ่าน Data Structure แบบพื้นฐานเช่น Array และ Hash จาก Server มาที่ Javascript ทางฝั่ง Client ได้เลย
ถ้าหากการส่ง Array และ Hash ไปมาระหว่าง Server และ Javascript ฝั่ง Client สะดวกแล้วหละก็ JSON ก็น่าจะเรียกได้ว่าใช่เลย
... แต่ทว่า อย่างไรก็ตาม การใช้ Javascript ก็ยังจำกัดอยู่เนื่องจากไม่สามารถไปเรียกข้อมูลจาก Server ได้ ... ดังนั้น Ajax จึงมีบทบาทในการช่วยใช้ javascript บน web browser เช่น IE และ Firefox,Chome etc. แลกเปลี่ยนข้อมูลกับ web server ได้ และแก้ไขหน้าเว็บเดี๋ยวนั้นโดยไม่ต้อง load หน้าใหม่
ปกติรูปแบบข้อมูลที่ใช้ในการแลกเปลี่ยนข้อมูลของ Ajax ก็คือ XML แต่กระนั้นเราก็ต้องมีท่าต่างๆ นานาเพื่อใช้ในการจัดการ xml อีก จะดีกว่าหรือไม่ถ้าหากเราส่งผ่าน Data Structure แบบพื้นฐานเช่น Array และ Hash จาก Server มาที่ Javascript ทางฝั่ง Client ได้เลย
ถ้าหากการส่ง Array และ Hash ไปมาระหว่าง Server และ Javascript ฝั่ง Client สะดวกแล้วหละก็ JSON ก็น่าจะเรียกได้ว่าใช่เลย
(ไทธนาวุฒิ)
สมมุติว่าเราต้องการส่งรายชื่อคนผ่าน XML เรา *อาจจะ*
ต้องเขียน
<presonlist>
<person>
<firstname>อภิชาติ</firstname>
<lastname>นามสมมุติ</lastname>
</person>
<firstname>ธนดล</firstname>
<lastname>นามจริง</lastname>
<person>
</person>
...
...
</personlist>
ตัวอย่างที่ 1
ถ้าเป็น JSON ก็จะใช้ [ ] แทน Array และ { } แทน Hash ( หรือ Associative Array หรือว่าการเชื่อมโยง ) ก็อาจจะเขียนได้แบบข้างล่าง
ถ้าเป็น JSON ก็จะใช้ [ ] แทน Array และ { } แทน Hash ( หรือ Associative Array หรือว่าการเชื่อมโยง ) ก็อาจจะเขียนได้แบบข้างล่าง
[ {"firstname":"อภิชาติ",
"lastname":"นามสมมุติ"},
{"firstname":"ธนดล",
"lastname":"นามจริง"}]
ตัวอย่างที่ 2
ตัวอย่างอาจจะดูลำเอียง ( และชวนเชื่อไปหน่อย ) แต่ว่าก็น่าจะพอทำให้เห็นภาพบ้าง นะครับพี่น้อง
และประโยชน์สูดสุดของ JSON ก็คือ สามารถ อ่านได้โดย eval คำสั่งเดียวหากใช้ javascript เช่น
ตัวอย่างอาจจะดูลำเอียง ( และชวนเชื่อไปหน่อย ) แต่ว่าก็น่าจะพอทำให้เห็นภาพบ้าง นะครับพี่น้อง
และประโยชน์สูดสุดของ JSON ก็คือ สามารถ อ่านได้โดย eval คำสั่งเดียวหากใช้ javascript เช่น
// สมมุติว่า json data เป็นไปตามตัวอย่างที่ 2
var
personList = eval('(' + json_data + ')');
// เราก็เอา personList มาเล่นได้เลย
alert(personList.firstname);
ตัวอย่างที่ 3
อาจจะมีข่าวลือที่เสียหายเกี่ยวกับ JSON ว่านำไปใช้กับภาษาอื่นที่ ไม่ใช่ Javascript ไม่ได้ ซึ่งมันไม่ค่อยจะจริงนัก เพราะว่ามี library สำหรับภาษาต่างๆ ที่ใช้กับ JSON มากมาย หรือต่อให้ไม่มี library พวกนั้นเราก็คงเขียนเองได้อยู่ดีครับ
อาจจะมีข่าวลือที่เสียหายเกี่ยวกับ JSON ว่านำไปใช้กับภาษาอื่นที่ ไม่ใช่ Javascript ไม่ได้ ซึ่งมันไม่ค่อยจะจริงนัก เพราะว่ามี library สำหรับภาษาต่างๆ ที่ใช้กับ JSON มากมาย หรือต่อให้ไม่มี library พวกนั้นเราก็คงเขียนเองได้อยู่ดีครับ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น