在本教程中,我们将学习如何解决TypeError:data.map不是JavaScript中的一个函数。
当我们对一个不是数据类型数组的值使用Array.map() 方法时,我们会在控制台得到以下错误。
例子。
const data = {
name: "john",
place: "italy"
};
obj.map(element => {
console.log(element);
});
输出。
"TypeError: data.map is not a function
在上面的例子中,我们得到这个错误是因为我们在一个对象上使用了map() 方法。
为了解决这个错误,我们需要在一个数据类型的数组上调用map()方法。
下面是一个例子。
const arr = [2, 3, 4];
arr.map(el=> el+2);
如果你想遍历对象,使用Object.keys() 方法获得数组格式的对象键,然后使用map() 方法循环遍历它。
下面是一个例子。
const user = {
name: "john",
place: "italy"
};
const keys = Object.keys(user);
keys.forEach(key=> {
console.log(user[key]);
}
);
输出。
"john"
"italy"
或者我们可以使用Object.values() 方法,它类似于Object.keys() ,但是它以数组格式返回values 。
const user = {
name: "john",
place: "italy"
};
const values = Object.values(user);
values.forEach(value=> {
console.log(value);
}
);
输出。
"john"
"italy"