我正在尝试使用找到here的LZMA-JS库来压缩字符串。这是我的javascript:
var reader = new FileReader();
reader.addEventListener("load", function () {
var big_code = reader.result;
console.log(big_code.length);
var my_lzma = new LZMA();
my_lzma.compress(my_lzma, 1, on_finish(result, error) {
code = result;
});
console.log(code.length);
}, false);
此行发生错误
my_lzma.compress(my_lzma, 1, on_finish(result, error) { //the rest occurs below
但是,当我通过移除{}
这样的括号来更改此行时
my_lzma.compress(my_lzma, 1, on_finish(result, error));
错误消失了。不幸的是,这使得代码无用,因为我需要result
。
我已经在互联网上浏览了一个多小时,试图找到解决此错误的方法。我不相信这是重复的,因为我没有发现任何相关内容。
为什么我收到此错误?
答案 0 :(得分:2)
文档可能令人困惑 - 函数的角色而不是名称是on_finish
,因此请使用它来表示您正在创建内联函数:
my_lzma.compress(my_lzma, 1, function (result, error) {
code = result;
});