シリーズのトップは↓こちら
前回の記事は↓こちら
たまたま再びプライベートで人にTypeScriptを叩き込む機会がありまして、せっかくなので再びこの場をお借りしていっしょに復習します。
前回の復習(再掲)
-
mkdir
- フォルダを作る
-
cd
- フォルダの中に入る
-
npm install --save-dev tsx
- TypeScriptを実行するためのパッケージを取ってくる
-
console.log
- コマンドの画面に出力する
-
npx tsx src/index.ts
-
src/index.ts
に書いたTypeScriptを実行する
-
↑これらはよく使うので慣れると便利です♪
今回のポイント
-
const response=await fetch("ここにURL");
してconst json:any=await response.json();
する- ネットからJSONを取ってくる
- 最初は覚えるだけでもいいかも
- HTTPの理解
- これだけで
ご飯3杯いける相当話ができる
-
console.dir(json,{depth:null});
- オブジェクトの中身を見る
-
console.log
とは違う
- オブジェクトの中身は
.
で使う-
json.last_price
みたいに
-
↑特に.
はもうすごく使いますのでまず間違いなく覚えるほうがいいと思います♪
top-level awaitに対する怒られ対応
await
のしどころが一番外側の場合、tsx
が怒る場合がありますので、"type":"module",
をpackage.json
にくわえてこんな感じにします。
{
"type":"module",
"devDependencies":{
"tsx":"^4.10.0"
}
}
たった3行でJSONを取ってきて出力する
今回はTypeScriptを叩き込んだみんなの大好きな暗号資産であるSymbolの日本円建てでの価格をZaif APIから取得します。
const response=await fetch("https://api.zaif.jp/api/1/last_price/xym_jpy");
const json:any=await response.json();
console.dir(json,{depth:null});
忘れずに保存して
npx tsx src/index.ts
これを実行すると、
{ last_price: 3.33 }
概ねこのような画面になるのではないでしょうか。
この3.33
と言うのは必ず3.33
が出るのではなく、実行する度にその時の最新の終値が出るので、この数値はよく変わると思います。
これがJSONをNode.js側で理解したものの内容です。ほしいものはこれ自体ではなく3.33
なのでこれを取り出します。
console.dir(json,{depth:null});
先程の最後の行↑を↓こう書き換えてみます。
console.dir(json.last_price,{depth:null});
ここが今日のポイントです。json
がjson.last_price
に変わっています。これはjson
の中のlast_price
を使うときにする書き方です。
それでは忘れずに保存して、
npx tsx src/index.ts
これを実行すると、
3.33
具体的な数値は変わるかもしれませんが、例えばこのような表示になるのではないでしょうか。
今回の目標はここまでです🎉
今回のポイント(再掲)
-
const response=await fetch("ここにURL");
してconst json=await response.json();
する- ネットからJSONを取ってくる
- 最初は覚えるだけでもいいかも
- HTTPの理解
- これだけで
ご飯3杯いける相当話ができる
-
console.dir(json,{depth:null});
- オブジェクトの中身を見る
-
console.log
とは違う
- オブジェクトの中身は
.
で使う-
json.last_price
みたいに
-
↑特に.
はもうすごく使いますのでまず間違いなく覚えるほうがいいと思います♪