javascript - JavaScript 中的 forEach 无法收集对象值
问题描述
以下代码段的输出应返回数组中 5 个城市的名称,但结果是一个空白数组。为什么?
arr = [
{name: "London", population: 30},
{name: "Moscow", population: 20},
{name: "Delhi", population: 50},
{name: "New York", population: 35},
{name: "Paris", population: 42}
]
var temp = [];
arr.forEach((item, index) => {
temp.push[item.name];
});
console.log(temp);
解决方案
使用 push(),而不是 push[]。
arr = [
{name: "London", population: 30},
{name: "Moscow", population: 20},
{name: "Delhi", population: 50},
{name: "New York", population: 35},
{name: "Paris", population: 42}
]
var temp = [];
arr.forEach((item, index) => {
temp.push(item.name);
});
console.log(temp);
推荐阅读
- c# - c# - 尝试使用位图捕获屏幕
- amazon-cloudwatch - 通过仪表板可视化 AWS CloudWatch 上的日志计数
- ios - 可扩展标签:在 UICollectionViewCell 中不起作用
- kubernetes - 多个 Kubernetes NodePort 服务可以共享同一个后端目标吗?
- reactjs - 当我仅使用 3 个组件时,Antd 的 2.7 mb budle 大小
- ruby-on-rails - AWS 访问密钥和 ID 的参数错误
- python - 获取特定评论 Facebook 用户下载的 comments.json
- php - 我如何使具有动态值的引用 url 前缀可以在所有网站中访问
- linux - 内核线程与用户线程之间的上下文切换
- android - 与同等仪器测试相比,使用 Robolectric 的运行时间更慢