[英]Object to Array returns undefined
我試圖將JS對象轉換為數組,但轉換后的數組未定義。
我最初有JSON,但是根據我的閱讀,它會自動解析為JS Object(當我嘗試解析它時,我會在位置1的JSON中收到SyntaxError:Unexpected token o)。 另外,當我console.log(typeof cityList)
我得到對象。
初始JSON如下所示:
[
{
"id": 707860,
"name": "Hurzuf",
"country": "UA",
"coord": {
"lon": 34.283333,
"lat": 44.549999
}
},
{
"id": 519188,
"name": "Novinki",
"country": "RU",
"coord": {
"lon": 37.666668,
"lat": 55.683334
}
}
]
我像這樣導入JSON: import cityList from './city.list.json';
我使用以下代碼進行轉換:
const cityListArray = Object.values(cityList);
如果我console.log(cityListArray)
我不確定。
我也嘗試過: const cityListArray = Object.keys(cityList).map(i => cityList[i])
但結果是相同的。
我不確定問題出在哪里。 任何幫助,將不勝感激!
您不需要轉換任何內容,因為JSON對象已經是一個數組。
您不應該檢查某物是否為typeof
數組,因為它會為數組返回"object"
。
const a = [];
typeof a; // "object"
您應該改用Array.isArray()
方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.