บทช่วยสอน JSON: เรียนรู้ด้วยตัวอย่างรูปแบบไฟล์อย่างง่าย

JSON คืออะไร?

JSON เป็นรูปแบบไฟล์ที่ใช้เก็บข้อมูลอย่างเป็นระเบียบและเข้าถึงได้ง่าย ฟอร์มเต็มของมันคือ Javaสัญกรณ์วัตถุสคริปต์ เป็นชุดข้อมูลที่มนุษย์สามารถอ่านได้และสามารถเข้าถึงได้ตามตรรกะ ส่วนขยายชื่อไฟล์สำหรับโค้ดโปรแกรมที่เขียนขึ้นคือ .json- ประเภทสื่ออินเทอร์เน็ตสำหรับ JSON คือ application/json และ Uniform Type Identifier คือ public.json

ทำไมต้องใช้ JSON?

นี่คือประโยชน์/ข้อดีที่สำคัญของการใช้ JSON:

  • ให้การสนับสนุนเบราว์เซอร์ทั้งหมด
  • อ่านและเขียนได้ง่าย
  • ไวยากรณ์ที่ตรงไปตรงมา
  • คุณสามารถแยกวิเคราะห์ได้ Javaสคริปต์ที่ใช้ฟังก์ชั่น eval()
  • ง่ายต่อการสร้างและจัดการ
  • สนับสนุนโดยสาขาวิชาเอกทั้งหมด Javaกรอบงานสคริปต์
  • สนับสนุนโดยเทคโนโลยีแบ็กเอนด์ส่วนใหญ่
  • JSON ได้รับการยอมรับโดยกำเนิดโดย Javaต้นฉบับ
  • ช่วยให้คุณสามารถส่งและทำให้ข้อมูลที่มีโครงสร้างเป็นอนุกรมโดยใช้การเชื่อมต่อเครือข่าย
  • คุณสามารถใช้กับภาษาโปรแกรมสมัยใหม่ได้
  • JSON คือข้อความที่สามารถแปลงเป็นวัตถุใดก็ได้ Javaสคริปต์เป็น JSON และส่ง JSON นี้ไปยังเซิร์ฟเวอร์

ประวัติความเป็นมาของ JSON

ประวัติความเป็นมาของ JSON
JSON กวดวิชา

ต่อไปนี้เป็นจุดสังเกตสำคัญที่สร้างประวัติศาสตร์ของ JSON:

  • Douglas Crockford ระบุรูปแบบ JSON ในช่วงต้นปี 2000
  • เว็บไซต์อย่างเป็นทางการเปิดตัวในปี 2002
  • ในเดือนธันวาคม พ.ศ. 2005 Yahoo! เริ่มให้บริการเว็บบางส่วนใน JSON
  • JSON กลายเป็นมาตรฐานสากล ECMA ในปี 2013
  • มาตรฐานรูปแบบ JSON ที่อัปเดตล่าสุดเผยแพร่ในปี 2017

คุณสมบัติของ JSON

ใช้งานง่าย – JSON API นำเสนอส่วนหน้าระดับสูง ซึ่งช่วยให้คุณลดความซับซ้อนของกรณีการใช้งานที่ใช้กันทั่วไป

ประสิทธิภาพ – JSON ค่อนข้างเร็วเนื่องจากใช้พื้นที่หน่วยความจำน้อยมาก ซึ่งเหมาะอย่างยิ่งสำหรับกราฟหรือระบบวัตถุขนาดใหญ่

เครื่องมือฟรี – ไลบรารี JSON เป็นโอเพ่นซอร์สและใช้งานได้ฟรี

ไม่จำเป็นต้องสร้างการแมป – Jackson API ให้การแมปเริ่มต้นสำหรับออบเจ็กต์จำนวนมากที่จะทำให้เป็นอนุกรม

ทำความสะอาด JSON – สร้างผลลัพธ์ JSON ที่สะอาดและเข้ากันได้ซึ่งอ่านง่าย

การอยู่ที่ – ไลบรารี JSON ไม่ต้องการไลบรารีอื่นใดในการประมวลผล

กฎสำหรับไวยากรณ์ JSON

กฎสำหรับไวยากรณ์ JSON คือ:

  • ข้อมูลควรอยู่ในคู่ชื่อ/ค่า
  • ข้อมูลควรคั่นด้วยเครื่องหมายจุลภาค
  • วงเล็บปีกกาควรยึดวัตถุ
  • วงเล็บเหลี่ยมยึดอาร์เรย์

ประเภทข้อมูลใน JSON

ประเภทข้อมูลสำคัญที่ใช้ใน JSON คือ:

ประเภทข้อมูล Descriptไอออน
จำนวน ประกอบด้วยจำนวนจริง จำนวนเต็ม หรือจำนวนลอยตัว
เชือก ประกอบด้วยข้อความหรือ Unicode ใดๆ ที่มีเครื่องหมายคำพูดคู่พร้อมเครื่องหมายแบ็กสแลช
บูลีน ชนิดข้อมูลบูลีนแสดงถึงค่า True หรือ False
โมฆะ ค่า Null แสดงว่าตัวแปรที่เกี่ยวข้องไม่มีค่าใดๆ
วัตถุ เป็นคอลเลกชันของคู่คีย์-ค่า และคั่นด้วยเครื่องหมายจุลภาคและอยู่ในวงเล็บปีกกาเสมอ
แถว เป็นลำดับของค่าที่แยกออกจากกัน

จำนวน

  • ตัวเลขดังกล่าวเป็นรูปแบบจุดลอยตัวแบบความแม่นยำสองเท่า ซึ่งขึ้นอยู่กับวิธีการใช้งาน
  • ใน JSON คุณไม่สามารถใช้รูปแบบเลขฐานสิบหกและฐานแปดได้

ตารางต่อไปนี้แสดงประเภทตัวเลข:

ประเภท Descriptไอออน
จำนวนเต็ม เลข 1-9 และ 0 ทั้งเลขบวกและเลขลบ
เศษ เศษส่วนเช่น 3
ตัวแทน เลขยกกำลังเช่น e, e+

ไวยากรณ์:

var json-object-name = { string : number_value,......}

ตัวอย่าง:

var obj = {salary: 2600}

เชือก

เป็นชุดอักขระ Unicode ที่อยู่ในเครื่องหมายคำพูดคู่และมีเครื่องหมายแบ็กสแลชหลบหนี

ตารางต่อไปนี้แสดงประเภทสตริงต่างๆ:

ประเภท Descriptไอออน
* ใช้สำหรับพิมพ์เครื่องหมายคำพูดคู่
/ ใช้สำหรับโซลิดัส
\ ใช้สำหรับรีเวิร์สโซลิดัส
B ใช้เพื่อเพิ่ม Backspace
F จากฟีด
N เพื่อสร้างบรรทัดใหม่
R ใช้สำหรับคืนรถ
T เพื่อแสดงแท็บแนวนอน
U เลขฐานสิบหก

ไวยากรณ์:

var json-object-name = { string : "string value",…..}

ตัวอย่าง:

var obj= {name: 'Andy'}

บูลีน

มันเก็บเฉพาะค่าจริงหรือเท็จเท่านั้น

ไวยากรณ์:

var json-object-name = {string : true/false, …..}

ตัวอย่าง:

var obj = {active: 'true'}

แถว

  • เป็นการรวบรวมคุณค่าตามลำดับ
  • คุณควรใช้อาร์เรย์เมื่อชื่อคีย์เป็นจำนวนเต็มตามลำดับ
  • ควรใส่ไว้ในวงเล็บเหลี่ยม โดยคั่นด้วยเครื่องหมายจุลภาค (,)

ไวยากรณ์:

[value, .......]

ตัวอย่าง:

การแสดงอาร์เรย์ที่จัดเก็บวัตถุหลายรายการ:

{
   "eBooks":[
      {
         "language":"Pascal",
         "edition":"third"
      },
      {
         "language":"Python",
         "edition":"four"
      },
      {
         "language":"SQL",
         "edition":"second"
      }
   ]
}

วัตถุ JSON

A วัตถุ JSON เป็นเอนทิตีใน JSON ซึ่งอยู่ในวงเล็บปีกกา เขียนเป็นคู่ชื่อและค่าแบบไม่เรียงลำดับ โดยชื่อควรตามด้วยเครื่องหมาย ":" (โคลอน) และคู่ชื่อ/ค่าต้องแยกกันโดยใช้ "," (จุลภาค) สามารถใช้ได้เมื่อชื่อคีย์เป็นสตริงที่กำหนดเอง

ไวยากรณ์:

{ string :  value, ….. }

ตัวอย่าง:

{
"id": 110,
"language": "Python",
"price": 1900,
}

ช่องว่าง

คุณสามารถแทรกช่องว่างระหว่างโทเค็นคู่หนึ่งได้

ตัวอย่าง:

ไวยากรณ์:

{string:"    ",….}

ตัวอย่าง:

var a = " Alex"; var b = "Steve";

ตัวอย่างของ JSON

ตัวอย่างโค้ดที่กำหนดกำหนดวิธีใช้ JSON เพื่อจัดเก็บข้อมูลที่เกี่ยวข้อง หนังสือการเขียนโปรแกรม พร้อมด้วยฉบับและชื่อผู้แต่ง

{
   "book":[
      {
         "id":"444",
         "language":"C",
         "edition":"First",
         "author":"Dennis Ritchie "
      },
      {
         "id":"555",
         "language":"C++",
         "edition":"second",
         "author":" Bjarne Stroustrup "
      }
   ]
}  

มาทำความเข้าใจรูปแบบ JSON ด้วยตัวอย่างไฟล์ JSON อื่น ในที่นี้ JSON จะกำหนดชื่อ นามสกุล และรหัสของนักเรียน

{
  "student": [ 
	
     { 
        "id":"01", 
        "name": "Tom", 
        "lastname": "Price" 
     }, 
	
     { 
        "id":"02", 
        "name": "Nick", 
        "lastname": "Thameson" 
     } 
  ]   
}

การประยุกต์ใช้ JSON

ต่อไปนี้เป็นแอปพลิเคชันทั่วไปของ JSON:

  • ช่วยให้คุณถ่ายโอนข้อมูลจากเซิร์ฟเวอร์
  • รูปแบบไฟล์ JSON ตัวอย่างช่วยในการส่งและทำให้ข้อมูลที่มีโครงสร้างทุกประเภทเป็นอนุกรม
  • ช่วยให้คุณสามารถเรียกใช้ข้อมูลแบบอะซิงโครนัสได้โดยไม่ต้องรีเฟรชหน้า
  • ช่วยให้คุณส่งข้อมูลระหว่างเซิร์ฟเวอร์และเว็บแอปพลิเคชัน
  • มีการใช้กันอย่างแพร่หลายสำหรับ Javaแอปพลิเคชันที่ใช้สคริปต์ ซึ่งรวมถึงส่วนขยายเบราว์เซอร์และเว็บไซต์
  • คุณสามารถส่งข้อมูลระหว่างเซิร์ฟเวอร์และเว็บแอปพลิเคชันโดยใช้ JSON
  • เราสามารถใช้ JSON กับภาษาการเขียนโปรแกรมสมัยใหม่ได้
  • ใช้สำหรับการเขียน Javaแอพพลิเคชันที่ใช้สคริปต์ซึ่งรวมส่วนเสริมของเบราว์เซอร์
  • บริการบนเว็บและ Restful API ใช้รูปแบบ JSON เพื่อรับข้อมูลสาธารณะ

JSON กับ XML

นี่คือข้อแตกต่างที่สำคัญระหว่าง JSON กับ XML

JSON XML
วัตถุ JSON มีประเภท XML ข้อมูลไม่มีการพิมพ์
ประเภท JSON: สตริง ตัวเลข อาร์เรย์ บูลีน ข้อมูล XML ทั้งหมดควรเป็นสตริง
ข้อมูลสามารถเข้าถึงได้ง่ายในรูปแบบออบเจ็กต์ JSON ข้อมูล XML จะต้องมีการแยกวิเคราะห์
ไฟล์ JSON สามารถอ่านได้ง่ายขึ้น ไฟล์ XML ไม่สามารถอ่านได้โดยมนุษย์
JSON ได้รับการสนับสนุนโดยเบราว์เซอร์ส่วนใหญ่ การแยกวิเคราะห์ XML ข้ามเบราว์เซอร์อาจเป็นเรื่องยุ่งยาก
JSON ไม่มีความสามารถในการแสดงผล XML มีความสามารถในการแสดงข้อมูลเนื่องจากเป็นภาษามาร์กอัป
การเรียกคืนมูลค่าเป็นเรื่องง่าย การเรียกค่ากลับมาทำได้ยาก
สนับสนุนโดยชุดเครื่องมือ Ajax มากมาย ชุดเครื่องมือ Ajax ไม่รองรับอย่างสมบูรณ์
วิธีการดีซีเรียลไลซ์/ซีเรียลไลซ์แบบอัตโนมัติเต็มรูปแบบ Javaต้นฉบับ นักพัฒนาจะต้องเขียน Javaโค้ดสคริปต์สำหรับการซีเรียลไลซ์/ดีซีเรียลไลซ์จาก XML
การสนับสนุนดั้งเดิมสำหรับวัตถุ วัตถุจะต้องแสดงออกตามแบบแผน โดยส่วนใหญ่จะพลาดการใช้คุณลักษณะและองค์ประกอบต่างๆ

ตัวอย่าง JSON

ด้านล่างนี้เป็นตัวอย่าง JSON ง่ายๆ:

{
  "student": [ 
	
     { 
        "id":"01", 
        "name": "Tom", 
        "lastname": "Price" 
     }, 
	
     { 
        "id":"02", 
        "name": "Nick", 
        "lastname": "Thameson" 
     } 
  ]   
}

ตัวอย่าง XML

<?xml version="1.0" encoding="UTF-8" ?>
<root>
	<student>
		<id>01</id>
		<name>Tom</name>
		<lastname>Price</lastname>
	</student>
	<student>
		<id>02</id>
		<name>Nick</name>
		<lastname>Thameson</lastname>
	</student>
</root>

JSON ไม่ใช่อะไร

  • ไฟล์ข้อมูล JSON ตัวอย่างไม่ใช่รูปแบบเอกสาร
  • มันไม่ใช่ภาษามาร์กอัป
  • JSON ไม่มีรูปแบบการทำให้เป็นอนุกรมทั่วไป
  • ไม่ใช่โครงสร้างที่เกิดซ้ำหรือเป็นวัฏจักร
  • มันยังไม่ใช่โครงสร้างที่มองไม่เห็นด้วย

ข้อเสียของ JSON

นี่คือข้อดีบางประการของ JSON:

  • ไม่มีการรองรับเนมสเปซ จึงมีความสามารถในการขยายต่ำ
  • ถูก จำกัด เครื่องมือในการพัฒนา สนับสนุน
  • ไม่รองรับคำจำกัดความไวยากรณ์ที่เป็นทางการ

เครื่องมือ JSON ยอดนิยม (ส่วนเสริม)

นี่คือเครื่องมือ JSON ที่สำคัญ:

JSONLint:

JSONLint เป็นโปรเจ็กต์โอเพ่นซอร์สที่ใช้เป็นตัวตรวจสอบและฟอร์แมตสำหรับ JSON เป็นรูปแบบการแลกเปลี่ยนข้อมูลที่มีน้ำหนักเบา คัดลอกและวาง พิมพ์โดยตรง หรือป้อน URL ในเครื่องมือตรวจสอบ JSON เพื่อตรวจสอบรหัส JSON ของคุณ

Link: https://jsonlint.com

ตัวแก้ไข JSON ออนไลน์:

JSON Editor Online เป็นเครื่องมือบนเว็บที่มีประโยชน์ ช่วยให้คุณสามารถแก้ไข ดู และจัดรูปแบบ JSON โดยจะแสดงข้อมูลของคุณเคียงข้างกันอย่างชัดเจนและแก้ไขได้ ซอฟต์แวร์แก้ไขโค้ด.

Link: https://jsoneditoronline.org/

เครื่องมือลดขนาด JSON:

เป็นเครื่องมือที่ช่วยให้คุณลบช่องว่างและให้โค้ด JSON ที่ใช้พื้นที่น้อยที่สุด

Link: https://www.browserling.com/tools/json-minify

ตัวแปลง JSON เป็น XML:

ตัวแปลง JSON เป็น XML เป็นเครื่องมือที่ง่ายและมีประสิทธิภาพซึ่งช่วยให้คุณแปลงโค้ด JSON ของคุณได้

Link: https://codebeautify.org/jsontoxml

ตัวจัดรูปแบบ JSON:

ตัวจัดรูปแบบ JSON ช่วยคุณแก้ปัญหาโดยการจัดรูปแบบข้อมูล JSON เพื่อให้มนุษย์อ่านและแก้ไขจุดบกพร่องได้ง่าย

Link:https://jsonformatter.curiousconcept.com/

สรุป

  • วิธี JSON ใช้เพื่อจัดเก็บข้อมูลในลักษณะที่เป็นระเบียบและเข้าถึงได้ง่าย
  • JSON ย่อมาจาก Javaสัญกรณ์วัตถุสคริปต์
  • JSON ให้การสนับสนุนเบราว์เซอร์ทั้งหมดที่มีในหลายภาษา
  • Douglas Crockford ระบุรูปแบบ JSON ในช่วงต้นปี 2000
  • JSON API มีส่วนหน้าระดับสูง ซึ่งช่วยให้คุณลดความซับซ้อนของกรณีการใช้งานทั่วไป
  • กฎสำคัญสำหรับการเขียนระบบ JSON คือข้อมูลควรเขียนเป็นคู่ชื่อ/ค่า
  • Number, String, Boolean, Null, Object และ Array เป็นประเภทข้อมูลที่สำคัญที่ใช้ใน JSON
  • ช่วยให้คุณถ่ายโอนข้อมูลจากเซิร์ฟเวอร์
  • วัตถุ JSON มีประเภทในขณะที่ข้อมูล XML ไม่มีประเภท
  • JSON ไม่ใช่รูปแบบเอกสาร
  • ไม่มีการรองรับเนมสเปซ จึงมีความสามารถในการขยายต่ำ
  • JSONLint เป็นโปรเจ็กต์โอเพ่นซอร์สที่ใช้เป็นตัวตรวจสอบและฟอร์แมตสำหรับ JSON