📌

【JS】REST APIを使う際に分割代入を使うと便利だった話

2020/12/17に公開

REST APIから情報を取得して取り回しをする際に、分割代入を上手く使うと色々楽が出来たので、メモ代わりに。
とあるREST APIを叩いた際に、inputの情報が出てくると仮定したコードです。

example1.js
const input  = {
	"header": [
		{"hash": "abc"},
		{"data": "heder data"}
	],
	"data": [
		{
			"id": 1,
			"title": "JavaScriptふりがなプログラミング",
			"price": "1643円",
			"auther": "及川卓也"
		},
		{
			"id": 2,
			"title": "初めてのJavaScript",
			"price": "3520円",
			"auther": "Ethan Brown"
		},
		{
			"id": 3,
			"title": "JavaScript本格入門",
			"price": "3278円",
			"auther": "山田 祥寛"
		}
	],
	"sender": {
		"html_url": "https://testcode_url",
		"events_url": "https://api.testcode_url"
	}
}
const {data: bookList} = input
const {sender: {html_url: url}} = input

console.log(bookList)
/* 0: {id: 1, title: "JavaScriptふりがなプログラミング", price: "1643円", auther: "及川卓也"}
1: {id: 2, title: "初めてのJavaScript", price: "3520円", auther: "Ethan Brown"}
2: {id: 3, title: "JavaScript本格入門", price: "3278円", auther": "山田 祥寛"} */
console.log(url) // https://testcode_url

REST APIで情報を取得すると時折不要な情報まで拾ってしまうことがあるので、このような感じであらかじめ分割代入を利用して情報をそぎ落とすと、その後の取り回しが簡単になります。
GraphQLが使える場合は、クエリーである程度取得できる情報の制御ができるので分割代入を使わず、GraphQLを使った方がいいかなと思います。

Discussion