有没有可以在Javascript中有效编辑大字符串的库?

Jos*_*eph 5 javascript algorithm text

我需要在javascript中有效地编辑大型文本文档(例如,源代码文件).

insertAtPosition(n, str)而且deleteAtPosition(n, length)必须快.

天真的字符串实现很慢,因为每个操作都需要将文档的内容复制到新的字符串.

有几种有效的方法可以做到这一点.我可以用线的阵列(王牌又名贝斯平做到这一点),但是当有超长线或许多短行,这将是缓慢的.更好的实现将使用跳过列表或一些其他聪明的数据结构.

但是,我希望有人已经实现了这样的事情.

有没有图书馆已经这样做了?我似乎无法找到任何与谷歌有用的东西 - 这个算法问题有一个共同的名称吗?

Jos*_*eph 2

我认为没有任何其他库可以做到这一点,所以我自己使用跳过列表实现了它。使用树形数据结构可能会更快,但跳跃列表很容易实现,并且闭包编译的 javascript 只有 2.5 KB。

如果还有其他人遇到同样的问题,请享受:

https://github.com/josephg/jumprope