【JavaScript】JSONを扱う方法とは。JSONについてまとめてみた。

JavaScript

JSONとは

JSONとは、「JavaScript Object Notation」の略で、構造化されたデータを表現するためのデータ形式のことを指します。

名前の通りJavaScriptのオブジェクトと同じような構文をしていて、WEBアプリケーションなどでデータをやり取りを行う際によく用いられます。

JSONファイルの拡張子は「.json」です。

JSONはJavaScriptだけではなく、PHPやPythonなどの他のプログラミング言語でも利用することができます。

JSONのフォーマット(構造)

JOSNは、JavaScriptのオブジェクトまたは配列の形で記述します。

{
  "name" : "taro",
  "age" : "25",
  "height" : "178"
}
[ "red", "blue", "green", "pink" ]

JavaScriptのオブジェクトや配列のように記述されているため、JavaScriptで扱いやすいというわけです。

JSONとJavaScriptのオブジェクトや配列と異なる点としては以下が挙げられます。

  • JSONはプロパティもダブルクォート「” “」で囲む必要がある
  • JSONをJavaScriptで扱う際、プロパティや文字列がシングルクォートで囲まれているとエラーになる。

JavaScriptのオブジェクトと完全に同等ではないため、JSONを使用する際には気をつけなければいけません。

JSONで表現できるデータ種類

JSONで表現できるデータの種類には以下があります。

  • 文字列 …… ダブルクォーテーションで囲んで記述する
  • 数値 …… 数値を記述する
  • null …… nullと記述する
  • bool …… ture 又は false を記述する
  • オブジェクト …… 入れ子で記述できる
  • 配列 …… 入れ子で記述できる

基本的にはJavaScriptのオブジェクトや配列と同じですが、以下の違いについては注意しましょう。

JSONJavaScriptのオブジェクト(配列)
文字列はダブルクォーテーション「” “」で囲む文字列をシングルクォーテーション「’ ‘」で囲める
変数が使用できない変数が使用できる
末尾がカンマ「,」では終われない末尾がカンマ「,」でもよい
プロパティは文字列である必要があるシングルクォーテーション「’ ‘」
やダブルクォーテーション「” “」
で囲まなくても良い

また、JSONをJavaScriptで扱うためにはJSONをJavaScriptオブジェクトへ変換する必要があります。

変換するための便利なメソッドが用意されていますので、みていきましょう。

JavaScriptオブジェクトをJSONへ変換する

JavaScriptオブジェクトをJSONへ変換するにはJSON.stringify()メソッドを使用します。

メソッドの引数にJSONへ変換したいJavaScriptオブジェクトを指定します。

// JavaScriptオブジェクト
const object = {
  "name" : "taro",
  "age" : "25",
  "height" : "178"
}

// JSONへ変換する
const json = JSON.stringify(object);

console.log(json); 
// '{"name" : "taro", "age" : "25", "height" : "178"}'

JSONをJavaScriptオブジェクトへ変換する

JSONをJavaScriptオブジェクトへ変換するにはJSON.parse()メソッドを使用します。

メソッドの引数にJavaScriptオブジェクトへ変換したいJSONを指定します。

// JSON
const object = '{
  "name" : "taro",
  "age" : "25",
  "height" : "178"
}'

// JavaScriptオブジェクトへ変換する
const jsObject = JSON.parse(object);

console.log(jsObject);
// {"name" : "taro", "age" : "25", "height" : "178"}

JSON.parse()メソッドとJSON.stringify()メソッドは、対となるメソッドであると言えます。

まとめ

JSONは、構造化されたデータを表現するためのデータ形式です。

JSONは、JavaScriptのオブジェクトは配列に似た構造をしていて、JSON.stringify()メソッドやJSON.parse()メソッドで変換することで、JavaScriptで扱うことができます。

また、JSONはJavaScript以外のプログラミング言語でも扱うことができ、API連携などでよく使用されます。

ぜひJSONについて理解を深め、積極的に活用していきましょう。

コメント

タイトルとURLをコピーしました