前提・実現したいこと
住所から郵便番号を取得するためのスクリプトを書いています。該当するデータを配列変数cities
に追加していくだけなのですが、後記のスクリプトだと、ループから出たら配列が空になってしまいます。
変数のスコープが合っていないようなのですが、どのように解決したら良いかわかりません。
発生している問題・エラーメッセージ
#1 では変数cities
は最終的に長さ3の配列になります。しかし#2ではからになってしまいます。
該当のソースコード
javascript
1const apiUrl = 'http://zipcoda.net/api?address=' 2let targetUrl 3let address 4 5let prefectures = ['東京都', '広島県'] 6address = '府中市緑町1-1-1' 7 8let cities = new Array() 9for (let city of prefectures) { 10 targetUrl = apiUrl + city + address 11 fetch(targetUrl) 12 .then(response => response.json()) 13 .then(json => { 14 cities = cities.concat(json.items) 15 console.log(cities) // #1 16 }); 17} 18 19console.log(cities) // #2
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。