问题标签 [for-of-loop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
33 浏览

javascript - Javascript for/of 循环(带有文件读取器)在第二次迭代中中断,但在 Chrome 调试器中完美地作为一个片段运行

对人好点。我是菜鸟,这是我的第一个 SO 问题...

这是我脚本中的一些 JS 代码:

当我在较大的脚本中运行它时,我没有得到所需的输出。相反,脚本中断并且页面只是重新加载。调试器(Chrome 开发工具)向我展示了循环的第一次迭代完全按照我想要的方式执行。但是一旦在第二个fr.readAsText(file);文件上执行,一切都会中断。

更令人兴奋的是,我将确切的代码行复制到了一个全新的 Snippet 中,当我在那里运行它时,独立于脚本的其余部分,它可以完美运行!

任何线索

  1. 如果第一次工作正常,为什么循环可能会在第二次迭代中中断?
  2. 为什么此代码可能在代码段中有效,但在我的脚本中无效?
  3. 我能做些什么来解决这个问题?

提前致谢!

根据评论中的要求,这里有更多来自脚本的代码,以显示在每次迭代中如何处理数据:

0 投票
0 回答
43 浏览

javascript - Vanilla JavaScript for-of 循​​环不会完成所有迭代

我正在构建一个 SET!JavaScript 中的游戏。我创建了一个包含 81 张卡片的卡片组 (mainDeck),并将十几个卡片 (cardsOnBoard) 拼接到一组对象中,以在游戏板上创建初始卡片。当我循环通过cardsOnBoard 将它们添加到板上时,循环只添加了12 张初始卡中的10 张。我没有看到它在哪里或为什么失败。我错过了什么?

最底层的函数(renderCardsOnBoard)不是用来自cardsOnBoard 的卡片填充卡片槽11 和12。

控制台日志(img)

console.log(cardsOnBoard

0 投票
0 回答
19 浏览

javascript - 为循环中的每个项目附加不同的事件监听器

对于这个练习,我试图创建一个主要基于 javascript 的邮箱。获取所有电子邮件后,我使用 for-of-loop 显示它们。我现在需要做的是为每封电子邮件提供一个事件侦听器,当我单击邮件时运行“show_email”功能。

不幸的是,当我运行此代码然后尝试单击电子邮件时,它总是加载 email.id 为 1 的电子邮件,而不是根据循环位置加载 email.id 的电子邮件。

现在我不知道如何解决这个问题。谢谢你的帮助!

0 投票
0 回答
37 浏览

javascript - 为什么多个 const 声明在 for...of 循环中起作用?

在使用一个普通的 Javascript 项目时,我偶然发现了一段代码,它在 for...of 循环中声明了多个 const。为了理解它是如何工作的,我在 for...of 文档中使用 MDN 示例复制了它:

...下面的代码将显示:

这意味着const 每个 loop 都被重新声明。这怎么可能?我认为constlet不能在不抛出 TypeError 的情况下重新声明,除了某些情况。这是可变阴影的情况吗?如果是这样,这是否意味着for...of中的每次迭代都包含不同的变量块

注意:Stack Overflow 向我提出了类似的问题,但需要澄清的是,没有一个与纯 Javascript 相关,所有这些问题都与 Typescript 相关。

0 投票
1 回答
25 浏览

javascript - 在多个 fetch 请求中的 for 循环中使用 fetch

好的,伙计们,我真的很想在这里做什么,以确保一切都按顺序执行。感觉就像我错过了等待或其他非常简单的东西,但我真的无法拼凑为什么我的返回等待不只是在所有其他提取完成后返回。

0 投票
1 回答
118 浏览

javascript - Javascript - 向集合中的所有对象发送事件

如何将自定义事件分派给集合中的所有自定义对象?

Node.shape 是一个Konva形状

由于我是 Javascript 的初学者,请保持回复易于理解,谢谢。

0 投票
3 回答
75 浏览

javascript - 添加/覆盖数组中的对象

如果属性存在,我试图覆盖数组中的对象title,否则只需将其推送到数组中。我找到了两种方法,我想知道哪一种是首选。

性能并不是真正的问题,但我想知道可变性是否可能,或者只是有更好的方法来完全做到这一点。

在这个片段中,我使用 for 循环来编辑原始数组:

在这里,我使用高阶函数并展开来做同样的事情:

在实际任务中,我正在data使用节点从 json 文件中读取数组并将更改写回它。

0 投票
0 回答
64 浏览

javascript - Javascript For of Loop 不会中断

我有一个对象和一个数组。

目的:

大批:

现在我比较 Id,如果它匹配,我想插入一个新对象。但是现在它在插入后不会中断。有人可以帮助我吗?

0 投票
1 回答
65 浏览

javascript - 使用 for..of 循环遍历迭代器而不是 iterable 是否合法?

迭代可迭代对象的推荐方法是使用 for..of 循环对象本身,如下所示:

我一直在尝试迭代,发现以下内容也可以得到完全相同的结果:

即使这样也有效:

关于 for..of 循环,我没有看到迭代迭代器而不是可迭代的建议。例如,参见 MDN 中的 for..of

以这种方式迭代是否合法?

0 投票
1 回答
179 浏览

javascript - 异步/等待循环 array.push 问题

我目前正在做一些我需要获取异步数据并将其推送到数组的事情。请看下文。

所以基本上,我取了一个学生,并用标记的版本更新了 student.essay 数组。但是,当我测试代码时,student.essay 数组返回一个空数组 []。

谁能告诉我哪里出错了?