Υποενότητα 7.3: Σημειογραφία αντικειμένων.

Site: ΕΛ/ΛΑΚ Moodle
Course: WEB II - Προηγμένος σχεδιασμός
Book: Υποενότητα 7.3: Σημειογραφία αντικειμένων.
Printed by: Guest user
Date: Sunday, 5 May 2024, 2:12 PM

Description

  • Τι είναι JSON
  • Δομή JSON 
  • Λίστες - Arrays σε JSON

Τι είναι JSON?

Τα αρχικά  JSON προέρχονται από r JavaScript Object Notation. 

Χρησιμοποιώντας το JSON, μπορούμε να αποθηκεύουμε και να μεταφέρουμε δεδομένα.

Χρησιμοποιούμε το JSON για να στέλνουμε δεδομένα από ένα διακομιστή σε μια σελίδα ή το αντίστροφο.

Όπως θα δείτε, η μορφή ενός αντικειμένου JSON είναι πολύ παρόμοια με αυτή που χρησιμοποιούμε για τη δημιουργία αντικειμένων JavaScript.

Σύνταξη JSON

Ένα παράδειγμα ενός αντικειμένου JSON είναι:

{
  "dishes": [
    {
      "id": 0,
      "name": "85% Dark Chocolate",
      "image": "images/dark85.jpg",
      "category": "darks",
      "label": "Hot",
      "price": "4.99",
      "featured": "true",
      "description": "Dark chocolate with no added sugar. Here you can taste the flavor of cocoa beans."
   }
]
}

Με βάση τα παραπάνω, ας αναλύσουμε τη σύνταξη:

  • Περιβάλλεται από {}
  • Έχουν ζεύγη κλειδιών - key (π.χ. "id") - τιμής - value (π.χ. 0).
  • Κάθε ζεύγος κλειδιού-τιμής διαχωρίζεται από το επόμενο με κόμμα
  • Κάθε key διαχωρίζεται από την τιμή του από άνω κάτω τελεία
  • Κάθε κλειδί πρέπει να είναι μια συμβολοσειρά και να γράφεται μέσα σε διπλά εισαγωγικά
  • Τα αντικείμενα περιέχουν arrays (στην περίπτωση αυτή 1 array) οι οποίες πρέπει να περιβάλλονται από [].

Στο παράδειγμά μας, το αντικείμενο "dishes" είναι μια array που περιέχει 1 αντικείμενο.

Παραδείγματα - Ασκήσεις

Παράδειγμα 1

Άσκηση

  1. Ας υποθέσουμε ότι θέλουμε να έχουμε τα αποτελέσματα "Interdimensional travel" και 2016.  Ποιες είναι οι κατάλληλες εντολές για αυτά τα αποτελέσματα;

Απάντηση:

superHeroes['members'][2]['powers'][4]
superHeroes.formed
Παράδειγμα 2

Άσκηση

  1. Ας υποθέσουμε ότι θέλουμε να έχουμε τα αποτελέσματα "Damage resistance" and "Madame Uppercut".  Ποιες είναι οι κατάλληλες εντολές για αυτά τα αποτελέσματα;

Απάντηση:

superHeroes[1].powers[1]
superHeroes[1].name

See more about JSON