在不带Node.js的javascript中使用lz4压缩

在不带Node.js的javascript中使用lz4压缩,javascript,node.js,compression,lz4,Javascript,Node.js,Compression,Lz4,我试图让LZ4解压在纯JavaScript的客户端工作 我找到了这个,但它应该与Node.js一起使用。 在同一个存储库中,我找到了一个理论上可以在浏览器中使用的。 问题是,这样的库仍然需要Node.js缓冲区,而我没有,因为我没有使用Node.js,所有这些都发生在客户端(我记录了一个bug,试图获取一些关于如何使用它的指针) 然后我寻找Node.js缓冲区的移植,我发现了这个。问题是,当我使用它时,我得到了这个错误 在Chrome和Firefox中: TypeError:这不是键入的数组 我

我试图让LZ4解压在纯JavaScript的客户端工作

我找到了这个,但它应该与Node.js一起使用。 在同一个存储库中,我找到了一个理论上可以在浏览器中使用的。 问题是,这样的库仍然需要Node.js缓冲区,而我没有,因为我没有使用Node.js,所有这些都发生在客户端(我记录了一个bug,试图获取一些关于如何使用它的指针)

然后我寻找Node.js缓冲区的移植,我发现了这个。问题是,当我使用它时,我得到了这个错误 在Chrome和Firefox中:

TypeError:这不是键入的数组

我为此记录了此报告。 我想将这两个库结合起来,我离用纯JavaScript实现lz4解压不远,但之前从未使用过ArrayBuffer、Uint8Array和Node.js。我正在努力连接这些点


我的问题:有人成功地用纯JavaScript解压了LZ4吗?有什么建议或建议吗?提前感谢。

我将提供一个想法而不是解决方案,您可以尝试此存储库

它有一个LZ4的纯c实现

您可以使用clang到llvm位代码编译它

当你有了这个,你就用这个

从llvm位代码中获取javascript

这就像c到javascript的编译,听起来可能很疯狂,但如果你看看他们已经实现了什么。。。我不知道它真的能起作用

看看他们用这个工具将很多东西移植到javascript中
举个例子:

这很可能是宇宙历史上最好的答案。Emscripten很棒,速度也相当快。费用在malloc,memcpy(那里和后面),免费。请记住,它是一个堆模拟器。emscripten非常好,但前提是您精通C/C++,因为您必须进行大量编译后修改,以使代码合理可用/可读。。不适合胆小的人