2017-12-26 12 views
1

Ich versuche, eine Zeichenfolge mithilfe der LZMA-JS-Bibliothek here gefunden zu komprimieren. Hier ist mein javascript:SyntaxError: fehlt) nach Argumentliste während der Verwendung von LZMA-js

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); 

Der Fehler auf dieser Linie jedoch

my_lzma.compress(my_lzma, 1, on_finish(result, error) { //the rest occurs below 

auftritt, wenn ich diese Zeile zu ändern, indem die {} Klammern wie diese

my_lzma.compress(my_lzma, 1, on_finish(result, error)); 

der Fehler geht weg . Leider macht dies den Code unbrauchbar, weil ich die result brauche.

Ich habe über eine Stunde lang im Internet nach einer Lösung für diesen Fehler gesucht. Ich glaube nicht, dass dies ein Duplikat ist, weil ich nichts Ähnliches gefunden habe.

Warum erhalte ich diesen Fehler?

Antwort

2

Die Dokumentation ist vielleicht verwirrend - die Rolle der Funktion, nicht nennen, ist on_finish, so dass diese stattdessen verwenden, um anzuzeigen Sie eine Inline-Funktion erstellen:

my_lzma.compress(my_lzma, 1, function (result, error) { 
    code = result; 
}); 

die example usage here See.

+0

ja das ist es! Vielen Dank. – Mathyou

Verwandte Themen