【问题标题】:javascript list manipulation library/frameworkjavascript 列表操作库/框架
【发布时间】:2012-03-03 21:04:35
【问题描述】:

我正在寻找一个 javascript 库/框架来操作列表。已经有类似的东西了吗?

理想情况下,我想要与 .NET 的 List 等效的东西。主要要求之一是能够从列表中的任何位置删除项目。一些类似 LINQ 的功能会很棒。

【问题讨论】:

  • underscore 是你想要的吗?
  • UI 中的列表还是代码中的列表?
  • 谢谢@pimvdb,下划线似乎确实是我正在寻找的东西,尽管它似乎没有我需要的一切。
  • @JarrettWidman,数据结构操作,与 UI 无关。
  • 另见:jLinq

标签: list javascript javascript-framework


【解决方案1】:

Underscore.js

它不能替代功能齐全的List 替代品,但是:

  • 它确实让你走得很远,
  • 设计得很好,
  • 有据可查(并且有一个非常漂亮的“literate-programming”风格annotated source),
  • 易于扩展,
  • 轻量级。

它具有很好的表现力和强大的内存占用率。

(请注意,这是受到以下两个库的启发,FunctionalJSData.js。)

FunctionalJS

它具有 Underscore.js 的大部分属性,并且肯定更面向函数式编程。然而:

Data.js

不仅仅是像 FunctionalJSData.js 这样的纯函数式编程库,还涵盖存储方面、类似图形的数据结构和其他好东西。

(有趣的是,Data.js 现在列出 Underscore.js 对其较新的迭代有影响,而 Underscore.js 已经将 Data.js 列为自己的影响力。)

List.js

List.js 用于处理 HTML 列表。它可能不是您想要的,但我想在这里添加它,并且它的工作非常好,并且在结合数据和 UI 管理方面适合一个很好的利基(不一定是一个好主意,但适用于某些人)例)。

其他...

Dojo(以及现在的许多其他 JS 库)支持一些较新的 JS API,或者在缺少它们时提供替代实现,其中一些是 fairly functional by nature 和设计。

但是,他们并没有把这个概念推得那么远,而且这些库更重量级,所以如果你只想从它们那里得到这些,我不会推荐它们。

jLinq,正如 JanusTroelsen 在您的问题 cmets 中提到的那样,看起来也很有希望,但我会更关心库的成熟度及其内存占用(但代码似乎非常“间隔” ,所以压缩版本可能是可以接受的)。

【讨论】:

  • pomeh 提到的还有 jSINQ、jsLinq 和 linq.js
  • @JanusTroelsen:是的,但是正如 pomeh 在他自己的回答中所写的那样,我不想转移人们对他回答的注意力。如果要接受这个,那么我可以像往常一样编辑它并在此处链接到他的信用(我已经在你的情况下这样做了,因为它是一个评论)。
【解决方案2】:

May linq.js 你在找什么? http://neue.cc/reference.htm

另外,http://microjs.com/ 是一个很好的站点,可以找到与特定需求相对应的库:)

【讨论】:

    【解决方案3】:

    您也可以尝试实现所有 C# LINQ 方法并保留其语法的 manipula 包:

    https://www.npmjs.com/package/manipula

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-24
      • 1970-01-01
      相关资源
      最近更新 更多