[英]Convert Object to Array returns Undefined
這是我正在嘗試轉換為數組的 object:
{ 1: {..}, 2: {..}, 3: {..}, 4: {..}, 5: {..}}
這是我用來將 Object 轉換為數組的 function:
const convertObjectToArray = (object) => {
const array = [];
if (object) {
Object.keys(object).forEach((key) => {
array.push({[key]: object[key]});
})
console.log('object inside function', object);
console.log('array inside function', array);
return array;
} else {
return [];
}
}
這里是渲染方法:
class PostList extends React.Component {
render() {
const { postList } = this.props;
const array = convertObjectToArray(postList);
console.log('postList', postList);
console.log('array', array);
return (
<div>
{array.map(({ id, ...otherCollectionProps }) => {
return (
<Post key={id} {...otherCollectionProps} />
);
})}
</div>
);
}
};
這里的問題是我收到“無法讀取未定義的屬性'map'”的錯誤,當在控制台內我用值記錄數組時 - 所以我不明白我是如何獲得未定義值的
這些是我登錄到控制台的對象/數組我嘗試過以下這些其他問題:1. Object 到數組返回未定義2. 映射 Object 以將 ZA8CFDE6331BD59EB2AC966F8911ZB4 轉換為數組
但它們不足以解決這個問題
提前感謝您的建議!
嘗試使用返回對象值數組的Object.values
。
const object = { 1: { a: 'a'}, 2: { b: 'b'}, 3: { c: 'c'} } const convertObjectToArray = Object.values; console.log(convertObjectToArray(object));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.