Εισαγωγή στη μορφή JSON στο JavaScript
Μερικές φορές χρειάζεται να μετατρέψουμε μια δομή δεδομένων, για παράδειγμα, έναν πίνακα ή ένα αντικείμενο, σε συμβολοσειρά. Αυτό μπορεί να χρειαστεί, για παράδειγμα, για να στείλουμε αυτή τη δομή μέσω του διαδικτύου ή να την αποθηκεύσουμε σε κάποια αποθήκη.
Για αυτό το σκοπό στο JavaScript επινοήθηκε μια ειδική μορφή JSON.
Η μορφή JSON μπορεί να περιέχει μια από τις δύο δομές: είτε έναν πίνακα, είτε ένα αντικείμενο με ζεύγη κλειδί-τιμή. Οι πίνακες και τα αντικείμενα κατασκευάζονται με τον ίδιο τρόπο όπως και στο JavaScript, αλλά έχουν έναν περιορισμό: όλες οι συμβολοσειρές και τα κλειδιά συμβολοσειρών των αντικειμένων πρέπει να περικλείονται σε διπλά εισαγωγικά.
Ας δημιουργήσουμε, για παράδειγμα, μια συμβολοσειρά που περιέχει έναν πίνακα σε μορφή JSON:
let json = '[1, 2, 3, 4, 5, "a", "b"]';
Και τώρα ας δημιουργήσουμε μια συμβολοσειρά που περιέχει ένα αντικείμενο σε μορφή JSON:
let json = `{
"a": "aaa",
"b": "bbb",
"c": "ccc",
"111": "ddd"
}`;
Μπορούμε να συνδυάσουμε αυτές τις δομές με οποιαδήποτε σειρά:
let json = `[
{
"a": "aaa",
"b": "bbb"
},
{
"c": "ccc",
"d": "ddd"
}
]`;
Σε αντίθεση με τις δομές JavaScript, στο JSON δεν επιτρέπονται κόμματα μετά τα τελευταία στοιχεία των πινάκων και των αντικειμένων:
let json = '[1, 2, 3, 4, 5,]'; // λανθασμένο
let json = '[1, 2, 3, 4, 5]'; // σωστό
Εκτός από αριθμούς και συμβολοσειρές, ως στοιχεία
μπορούν να εμφανίζονται επίσης οι τιμές true,
false και null:
let json = '[null, true, false]';
Δίνεται ο πίνακας:
let arr = [1, 2, 3, 'a', 'b', 'c'];
Μετατρέψτε χειροκίνητα αυτόν τον πίνακα σε συμβολοσειρά σε μορφή JSON.
Δίνεται το αντικείμενο:
let obj = {
a: 1,
b: 2,
c: 'eee',
d: true,
};
Μετατρέψτε χειροκίνητα αυτό το αντικείμενο σε συμβολοσειρά σε μορφή JSON.
Δίνεται το αντικείμενο:
let obj = {
a: ['a', 'b', 'c',],
b: '111',
c: 'eee',
};
Μετατρέψτε χειροκίνητα αυτό το αντικείμενο σε συμβολοσειρά σε μορφή JSON.