Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions 1-js/05-data-types/12-json/1-serialize-object/task.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ importance: 5

---

# Turn the object into JSON and back
# Omdan et objekt til JSON og tilbage

Turn the `user` into JSON and then read it back into another variable.
Omdan `user` til JSON og læs det derefter tilbage i en anden variabel.

```js
let user = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ let room = {
};

let meetup = {
title: "Conference",
title: "Konference",
occupiedBy: [{name: "John"}, {name: "Alice"}],
place: room
};
Expand All @@ -19,12 +19,12 @@ alert( JSON.stringify(meetup, function replacer(key, value) {

/*
{
"title":"Conference",
"title":"Konference",
"occupiedBy":[{"name":"John"},{"name":"Alice"}],
"place":{"number":23}
}
*/
```

Here we also need to test `key==""` to exclude the first call where it is normal that `value` is `meetup`.
Vi bør også teste `key==""` for at ekskludere det første kald, hvor det er normalt at `value` er `meetup`.

18 changes: 9 additions & 9 deletions 1-js/05-data-types/12-json/2-serialize-event-circular/task.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,38 +2,38 @@ importance: 5

---

# Exclude backreferences
# Ekskluder cirkulære referencer

In simple cases of circular references, we can exclude an offending property from serialization by its name.
I simple tilfælde med cirkulære referencer kan vi ekskludere en egenskab fra serialisering ved dens navn.

But sometimes we can't just use the name, as it may be used both in circular references and normal properties. So we can check the property by its value.
Men nogle gange kan vi ikke bare bruge navnet, da det kan bruges både i cirkulære referencer og normale egenskaber. Så vi kan tjekke egenskaben ved dens værdi.

Write `replacer` function to stringify everything, but remove properties that reference `meetup`:
Skriv en `replacer` funktion der `stringify'er` alt, men fjerner egenskaber med reference til `meetup`:

```js run
let room = {
number: 23
};

let meetup = {
title: "Conference",
title: "Konference",
occupiedBy: [{name: "John"}, {name: "Alice"}],
place: room
};

*!*
// circular references
// circulær reference
room.occupiedBy = meetup;
meetup.self = meetup;
*/!*

alert( JSON.stringify(meetup, function replacer(key, value) {
/* your code */
/* din kode */
}));

/* result should be:
/* resultatet bør være:
{
"title":"Conference",
"title":"Konference",
"occupiedBy":[{"name":"John"},{"name":"Alice"}],
"place":{"number":23}
}
Expand Down
Loading