> For the complete documentation index, see [llms.txt](https://demirels-organization.gitbook.io/javascript-tutorial/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://demirels-organization.gitbook.io/javascript-tutorial/json.parse-string-json.stringify-object/rhythm-action-game-example.md).

# Rhythm action game example

Here is an example of how `JSON.parse` and `JSON.stringify` could be used in the context of a rhythm action game:

Let's say that the game has a feature for creating and saving custom songs, and the player can choose the notes and timing for each song. The game could store this data in a JSON file, with each song represented as a JSON object containing properties for the song's name, artist, and an array of objects representing the notes in the song.

To save a new song, the game could use `JSON.stringify` to convert the song data to a JSON string, and then save the string to a file:

```javascript
const newSong = {
  name: 'My Awesome Song',
  artist: 'Me',
  notes: [
    {
      time: 1000,
      note: 'C'
    },
    {
      time: 2000,
      note: 'D'
    },
    // more notes...
  ]
};

const jsonString = JSON.stringify(newSong);

// save jsonString to a file using filesystem API
```

To load a saved song, the game could use `JSON.parse` to parse the JSON string from the file and create a JavaScript object from it:

```javascript
// read jsonString from file using filesystem API

const savedSong = JSON.parse(jsonString);

console.log(savedSong.name); // "My Awesome Song"
console.log(savedSong.artist); // "Me"
console.log(savedSong.notes[0].time); // 1000
```

In this example, the `newSong` object represents a custom song created by the player, with properties for the song's name, artist, and an array of objects representing the notes in the song. We use `JSON.stringify` to convert the object to a JSON string, which is then saved to a file.

To load the saved song, we read the JSON string from the file and use `JSON.parse` to parse the string and create a JavaScript object from it. We can then access the object's properties to retrieve the song's data.
