gpt4 book ai didi

javascript - Lo-Dash,数组和集合的区别

转载 作者:IT王子 更新时间:2023-10-29 03:19:11 26 4
gpt4 key购买 nike

看一眼 Lo-Dash 文档就会发现 API 属于以下类别:

  1. 数组,
  2. 链接,
  3. 收藏,
  4. 函数,
  5. 对象,
  6. 实用程序,
  7. 方法,
  8. 和属性

对 Arrays API 的更详细了解显示了大约 30 种适用于数组的不同方法。

Collections API 比 Arrays API 多了几个方法,而且它们不共享相同的方法。

在 Collections API 中,集合被描述为一个被迭代的对象,并且可能是一个数组:

collection (Array|Object|string): The collection to iterate over.

此外,有趣的是,有一个 Collections API 方法 _.toArray 从集合中返回一个数组:

Arguments

collection (Array|Object|string): The collection to convert. Returns

(Array): Returns the new converted array.

有人会碰巧知道 Lo-Dash API 中数组和集合之间的形式区别吗?我假设这是由于 Backbone.js 而造成的差异,但是,现在我质疑我为此的推理,因为这些方法可能在其他地方可用。提前致谢。

最佳答案

查看更详细的 Underscore.js documentation 是个好主意,从中得出这种区别。它指出:

Collection functions work on arrays, objects, and array-like objects such as arguments, NodeList and similar. But it works by duck-typing, so avoid passing objects with a numeric length property.

基本上,“集合”是实现某种“可迭代”接口(interface)的东西,它们在内部使用相同的迭代方法(尽管 Lodash 源代码比 Underscore 更复杂一些)。所有的“集合方法”都适用于数组和对象(以及一些可迭代的东西),而数组方法只能用于数组(或者可能所有带有 .length 和数字索引的东西) ,并且对象方法适用于任何对象。

关于javascript - Lo-Dash,数组和集合的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23921647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com