JSON Konvertierung

FunktionBedeutung
JSON.stringify(objectRef)Objekt in String wandeln
JSON.parse(jsonString)String in Objekt wandeln
JavaScriptlet p = { name: 'Anna', age: 23 };

let pAsJson = JSON.stringify(p);
console.log(pAsJson);

let pParsedBack = JSON.parse(pAsJson);
console.log(pParsedBack);

let p2 = JSON.parse('{"name": "Ben", "age":22}');
console.log(p2);

Vorgehen, wenn nicht nur Daten von Objekten, sondern auch Methoden wiederhergestellt werden sollen:

JavaScriptclass Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  print() {
    console.log(`Hallo ich bin ${this.name}`);
  }
}

let p = new Person('Anna', 23);

let pAsJson = JSON.stringify(p);
let pParsedBack = JSON.parse(pAsJson);

// does not work
// pParsedBack.print();

let p2 = { name: 'Anna', age: 23 };
// does not work either:
// p2.print();

// this works:
let pAsObject = new Person(pParsedBack.name, pParsedBack.age);
pAsObject.print();

console.log(pParsedBack);
console.log(pAsObject);