【中学生でもわかる】JavaScriptのJSON.stringify()メソッド

programming
学習コースキャンペーンバナー

こんにちは、フローです。

今回は、JavaScriptのJSON.stringify()メソッドについて書いていきたいと思います。

JSON.stringify()とは?

このメソッドは、JavaScriptオブジェクトをJSON形式の文字列に変換します。

JSON(JavaScript Object Notation)は、データを交換するための軽量なデータ形式で、

人間にとって読み書きが容易で、マシンにとっても簡単に解析や生成を行えます。

let obj = { name: "John", age: 30, city: "New York" };
let myJSON = JSON.stringify(obj);
console.log(myJSON);

上記の例では、

JavaScriptオブジェクトをJSON.stringify()メソッドを使用してJSON形式の文字列に変換し、

その結果をコンソールに出力します。

JSON.stringify()を使う場面

データをサーバーに送信するとき、

データはテキスト形式でなければなりません。

JSON.stringify()メソッドは

JavaScriptオブジェクトを文字列に変換するため、

データをサーバーに送信するときなどによく使われます。

JSON.stringify()の使い方とパターン

以下に、JSON.stringify()の使用パターンを3つ示します。

基本的なオブジェクトの変換

let obj = { name: "John", age: 30, city: "New York" };
let myJSON = JSON.stringify(obj);
console.log(myJSON);

1行目:

オブジェクトobjを宣言しています。このオブジェクトは3つのプロパティを持っています:nameagecity。それぞれの値は"John"30"New York"です。

2行目:

JSON.stringify()メソッドを使用してオブジェクトobjをJSON形式の文字列に変換しています。このメソッドはオブジェクトを引数に取り、それを文字列形式に変換します。結果は新たな変数myJSONに格納されます。

3行目:

console.log()メソッドを使用して変数myJSONの内容をコンソールに出力しています。この場合、出力されるのはobjオブジェクトをJSON形式の文字列に変換した結果です。

配列の変換

let arr = [1, 2, 3, 4];
let myJSON = JSON.stringify(arr);
console.log(myJSON);

1行目:

この行では、配列arrを宣言しています。この配列は4つの要素、すなわち1234を含んでいます。

2行目:

この行では、JSON.stringify()メソッドを使用して配列arrをJSON形式の文字列に変換しています。このメソッドは引数に与えられたJavaScriptの値(この場合は配列)をJSON形式の文字列に変換します。変換された結果は新たな変数myJSONに格納されます。

3行目:

この行では、console.log()メソッドを使用して変数myJSONの内容をコンソールに出力しています。この場合、出力されるのはarr配列をJSON形式の文字列に変換した結果です。

ネストしたオブジェクトの変換

let obj = {
name: "John",
age: 30,
city: "New York",
family: {
mother: "Jane",
father: "Peter"
}
};
let myJSON = JSON.stringify(obj);
console.log(myJSON);

1-8行目:

この部分では、オブジェクトobjを宣言しています。このオブジェクトは4つのプロパティ(nameagecityfamily)を持っています。familyはさらにネストされたオブジェクトとなっており、motherfatherという2つのプロパティを持っています。

9行目:

この行では、JSON.stringify()メソッドを使用してオブジェクトobjをJSON形式の文字列に変換しています。このメソッドはオブジェクトを引数に取り、それを文字列形式に変換します。変換された結果は新たな変数myJSONに格納されます。

10行目:

この行では、console.log()メソッドを使用して変数myJSONの内容をコンソールに出力しています。この場合、出力されるのはobjオブジェクトをJSON形式の文字列に変換した結果です。

JSON.stringify()の注意点

JSON.stringify()メソッドを使用する際は、

変換できない値に注意する必要があります。

例えば、関数やundefinedはJSON形式に変換できません。

let obj = {
name: "John",
age: 30,
city: "New York",
greet: function() {
console.log("Hello");
}
};
let myJSON = JSON.stringify(obj);
console.log(myJSON); // {"name":"John","age":30,"city":"New York"}

このコードでは、greet関数はJSON形式の文字列に含まれません。

まとめ

JSON.stringify()メソッドは、JavaScriptオブジェクトをJSON形式の文字列に変換するための非常に便利なツールです。

この機能は、データをサーバーに送信したり、

データをテキスト形式で保存したりする際に頻繁に利用されます。

しかし、

すべてのデータがJSON形式に変換できるわけではないので、

何が変換され、何が変換されないのかを理解することが重要です。

時間をかけてこれらのコンセプトを理解し、

自身のコードに活用してみてください。

次回もJavaScriptの世界をさらに探求していきましょう!

レッツチャレンジ!