javascript - 循环的结果不能正常工作

标签 javascript arrays loops iteration

  1. 我想遍历一个数组。
  2. 我想缩写任何长度大于 3 的索引。
  3. 我想将新的缩写月份放入一个新数组中。
  4. 我想通过将结果写入控制台来测试它是否有效。

我可以让代码运行,但结果并不像我希望的那样。根据我的理解,循环运行为真,运行 if 语句,它运行为真,运行代码块。之后,只要 i < months.length,循环就应该迭代并继续,但它没有。

var months = ["January", "Febuary", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var monthsAbbrev = [];

for (var i = 0; i < months.length; i++) {
if (months[i].length > 3) {
monthsAbbrev = months[i].slice(0, 3);
}
}

console.log(monthsAbbrev);

最佳答案

您可以简单地使用 Array.prototype.map() 来完成

var months = ["January", "Febuary"]; //sample data for better understanding
var monthsAbbrev = months.map(v => v.substr(0,3));
console.log(monthsAbbrev); //["Jan", "Feb"]

顺便说一下你不是pushing在代码中将任何内容放入目标数组,这就是问题所在。

关于javascript - 循环的结果不能正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38413690/

相关文章:

javascript - 使前两列粘在表格中

arrays - 从 firebase 存储中检索图像以显示在 tableView 上 (Swift)

php - 使用 array_multisort() 不区分大小写地对多维 PHP 数组进行排序

arrays - 数组仿函数练习

r - 为什么这个循环的时间复杂度是非线性的?

javascript - 循环遍历数组中的 JSON 对象

javascript - 从 json 循环创建多维数组,将特定值加入组中

javascript - Bootstrap 日期时间选择器中的选项禁用日期不起作用

javascript - enquire.js - 如何在动态创建的寄存器函数中维护变量?

python - 为什么你可以在 for 循环中循环一个隐式元组,而不是 Python 中的一个理解?