节点JS可以在for循环期间通过外部函数修改数组
node js can array be modified during for loop, by external function?
假设我的程序当前处于for循环中,但由于某种原因,它花费的时间太长了。假设算法以某种方式非常慢,以至于循环遍历数组中的 100 个元素大约需要 500 毫秒。
当程序在数组内时,也许在处理元素编号 50 时,我是否有可能从网络收到传入的命令,告诉我添加更多元素或从数组中删除元素?
一个实际示例是匹配队列服务器。每次用户加入时,服务器都会尝试通过调用函数来尽可能匹配玩家,但队列中的玩家(尚未被函数"到达")可能会简单地离开并退出。这会以某种方式破坏 for 循环搜索吗?
摘要:我有一个想要循环访问的数组,它可以在外部函数引起的 for 循环期间更改(添加/删除)其元素吗?还是会在程序使用 for 循环完成后调用这些函数?(就像在对数据库进行查询时被锁定以防止这些相同的问题)
JavaScript 在单个事件循环上运行。只要它运行你的函数,它就不会运行任何其他函数。
如果收到一个事件,指出应将项添加到数组中,则在当前正在运行的函数完成之前,该事件的事件处理程序无法触发。
相关文章:
- HTML表单提交时未执行外部函数
- 从外部函数渲染后更改ReactJS类的状态
- 使用promise通过外部函数从DOM中检索属性
- 从内部函数javascript内部分配外部函数的对象
- JavaScript 变量使用外部函数
- 将外部函数返回的id传递给内部函数
- 使用ajax调用触发一个外部函数
- 内部函数不会为外部函数在 jQuery 中动态创建的元素赋值
- $location.search() 与外部函数一起使用,重置整个$scope.如何避免它
- 如何从许多内部非阻塞函数调用之一中提前退出外部函数
- Javascript,闭包中的返回函数如何与外部函数连接
- 从外部函数(数组)了解返回函数(x)
- Jquery:如何获取变量的局部外部函数
- 未调用的外部函数-javascript
- 如何将闭包从外部函数中提取出来,以便在不同的上下文中重用所述闭包
- 内部匿名函数如何具有外部函数的作用域
- 从外部函数获取参数名称
- javascript/google maps:为什么我在哪里初始化我的地图(内部与外部函数)很重要
- 如何将 THIS 绑定到 PHP 中的外部函数
- 如何在 javascript 中内部调用外部函数