I'v bekam ein Objekt obj
von einem JSON.parse
:Warum benennt Google Closure Compiler Objekteigenschaftennamen um?
var obj = JSON.parse(some_data);
Und es wird angenommen, dass obj
eine Eigenschaft x
hat:
console.log('Z', obj, obj.x);
Die Konsolenausgabe:
Z Object {x: "m", n: Array[256], t: Array[256], v: Array[256]} undefined
Wie Sie sehen, obj.x
existiert. Aber das dritte Argument von console.log
gescheitert, es zu drucken, weil Google Closure Compiler den folgenden Code erzeugt:
console.log("Z ",a,a.G);
Die x
Eigenschaft G
umbenannt. Was ist der beste Weg, damit umzugehen? Die erste Idee, wenn obj["x"]
zu verwenden ist.
Es ist interessant, auch das, was hinter dem Google Closure Compiler des desigion ist x
-G
für das Objekt zu benennen, die von JSON.parse
kommt, wenn man bedenkt, dass JSON nicht verfügbar ist Compiler und x
kann es existieren?