javascript - 在 JavaScript 中调用其中的某个函数时,只获取 for 循环中的第一个键
问题描述
我有一个功能CellDisplay
。在另一个函数中调用这个函数forLaunch
,这个函数在一个由对象数组组成的forLaunch
循环中被再次调用。Obj.forEach
如果我console.log(key)
在forLaunch
函数中记录键,它只显示第一个键。我需要所有的键来显示。这是下面的代码
Javascript
const CellDisplay = item => {
switch (item) {
case 'item1':
return 'one';
case 'item2':
return 'two';
case 'item3':
return 'three';
case 'item4':
return 'four';
case 'item5':
return 'five';
}
};
const forLaunch = lData => {
for (const key in lData) {
console.log(key);
return CellDisplay(key);
}
}
const Obj = [{
Id: 575,
items: {
item1: '2020-12-08T10:00:00.000+0000',
item2: '2020-11-12T00:00:00.000+0000',
item3: '2020-12-08T10:00:00.000+0000',
item4: null,
item5: '2020-12-08T10:00:00.000+0000'
},
active: false
}];
Obj.forEach(data => {
forLaunch(data.items);
});
解决方案
你的 for 循环中有一个 return 语句,所以一旦你第一次点击 return 语句,你就被打破了forLaunch
方法,随后,退出了 for 循环。
例如,如果您要更改return CellDisplay(key)
为console.log(CellDisplay(key))
,您将打印出所有 CellDisplay 值。
推荐阅读
- sql - 动态地将数据从 XML 合并到 SQL
- r - 是否有用于选择 2 个数据帧的常用值的 R 函数?
- java - 使用 JPA 时如何将 Web 应用程序的数据库从 RDB 更改为 Hadoop?
- java - 如何将 EmbeddedId 中的外键设置为具有其他 EmbeddedId 的其他实体
- excel - 用颜色比较两列并获取琥珀色列的数据的宏
- r - R 几年的天数趋势
- powerbi - Power BI Embedded Link 的跨报表钻取选项
- javascript - ngx-cookie - 服务器端渲染中的空白 cookie 对象
- python - 无法在其他计算机上运行在我的电脑上创建的 exe
- google-analytics - 取消嵌套命中和取消嵌套会话范围的自定义维度 BigQuery 代码过滤器