当前位置: 首页 > 网络应用技术

你为什么要搬家?

时间:2023-03-07 14:26:29 网络应用技术

  理解这些后,我知道它实际上是一个迭代器。他和周期的本质之间的区别是负责遍历()迭代对象,而周期是一种循环机制,但它只能穿过阵列。

  让我们谈谈迭代器是什么,并记住前面提到的生成器。当它被调用时,它将生成一个迭代对象。它有一个方法。当末端变成末端时,它是后返回值,并且通过连续调用和迭代依次访问内部值。

  迭代器是一个特殊的对象。ES6规范中的徽标是返回对象的方法,并判断了迭代行为。没有曝光,迭代器已经旅行。

  查看代码:

  我们看到了。这也是实施原则。

  呼叫返回对象的值保存在中间,直到周期跳跃,所有迭代对象都可以消耗。LET查看其他迭代对象:

  因此,我们还可以直观地看到,当调用迭代对象中的属性时,可以生成迭代器,并且还会生成迭代器,并且每个元素的值都在内部回调函数中传输。

  (感兴趣的学生可以搜索源代码,并且示例已安装,但是互联网上的大多数答案都是通过判断长度和使用流通机制来实现的。请致电并传递回调功能。由于答案不是在互联网上找到或断言,有答案的人可以在评论区域发表评论)

  了解本质的本质。在申请过程中,他们有什么样的语法差异?

  我们真的了解参数的完整参数吗?它可能是这样的:

  自我:从距离从左到右的右侧获得了当前段落阵列的元素。

  索引:当前元素的索引,第一个元素索引为0,并且按顺序按下。

  ARR:阵列当前遍历。

  这:这在回调函数点中。

  我们可以将实施阵列算成沉重:

  在JS中中断或跳出周期的中断在周期中具有一些中断行为。它非常适合优化数组遍历搜索,但是由于它是迭代器,因此我们只能完成遍历以便按顺序完成顺序。因此,请勿支持上述中断行为。

  如果我必须跳出周期怎么办?实际上,有一种方法,在帮助下:

  如果遇到错误,您将不会报告,但不会生效

  删除自己的元素,并且不能以无法控制的值重置索引。它只会增加没有大脑的自我刺激性,直到它大于数组。因此,不可能删除自己以重置。首先看一个简单的例子:

  它不会随着功能内部的增加和减少而改变。在实际开发中,同时删除某个项目的同时遍历数组非常普遍。使用删除时请注意。

  该周期可以控制周期的起点,如上所述所示。对于人工干预,周期的起点只能为0,但循环不同:

  以前的阵列遍历和删除繁殖操作可以写为

  在性能比较方面,我们添加了一个迭代器,该迭代器会生成一个新数组,就像我们的比较性能在浏览器环境中:

  性能比较:> foreach>地图

  在Chrome 62和Node.js v9.1.0的环境中:周期比20%快的速度快1倍。

  原因分析

  :for循环没有其他功能调用堆栈和上下文,因此其实现是最简单的。

  :对于foreach,其功能签名包含参数和上下文,因此性能将低于周期。

  :最慢的原因是它将返回一个新数组。数组的创建和分配将导致内存空间的分配,因此它将带来更大的性能开销。如果在周期内嵌套,将带来更多不必要的内存消耗。

  当每个人都带有迭代器遍历数组时,就不必在不返回新数组的情况下返回新数组。我已经看到许多人在我的前端合作的开发过程中只是用来穿越数组:

  最后写:这是我在采访中遇到的一个问题。当时,我只知道语法之间的区别。迭代对象,迭代器,发电机和性能以及两者之间的差异之间没有相同的相似性。我也希望我可以从多个角度谈论一个简单的问题,以便每个人都在彻底理解它。

  如果本文有帮助或受到您的启发,那是我的荣幸