Warum werden keine JavaScript-Dateien im browserspezifischen Bytecode gesendet? [geschlossen

Es gibt keinen universellen Bytecode für JavaScript, aber die meisten JavaScript-Engines haben einen eigenen Bytecode. Da JavaScript-Dateien als Quellcode-Zeichenfolge übertragen werden, müssen sie die Quellcode-Zeichenfolge vor der Ausführung zu Bytecode parsen / kompilieren.

Da wir jedoch einen Benutzeragententyp (z. B. Browsertyp und -version) in der HTTP-Anforderung angeben können, können wir nicht dafür sorgen, dass der Server den Bytecode für jeden Browser beibehält und entsprechend reagiert, um beim Client Zeit zu sparen?

Was hindert uns daran, diesen Ansatz zu verfolgen? Ich denke nicht, dass Browser kein Problem haben werden, selbst wenn einige JavaScript-Dateien in Bytecode und andere in Quelltext angegeben sind. Ebenso haben wir .pyc-Dateien in Python, und es läuft gut mit .py-Dateien.

[Aktualisieren Mögliche Vorteile, die ich mir vorstellen kann, sind unten.

Sie könnten beim Parsen auf dem Client Zeit sparen. Das Parsen ist schnell, kann sich aber für Low-End-Geräte lohnen.Sie könnten einige Hinweise in den Bytecode einfügen. Beispielsweise korrigiert JavaScriptCore (WebKits JavaScript Engine, kurz JSC) den Bytecode mit Informationen, die zur Laufzeit gesammelt wurden, z. B. Typen. Der Bytecode von JSC ist so konzipiert, dass er über Steckplätze für solche Informationen verfügt.

m Hinblick auf die Wartbarkeit kann der Server immer die ursprüngliche Quellcode-Zeichenfolge senden, wenn der Browser des Clients nicht unterstützt wird und es nicht so viele verschiedene JavaScript-Engines gibt. Die Unterstützung der vier beliebtesten Browser (Chrome, Firefox, IE und Safari) scheint mir machbar. Außerdem sehe ich keine häufigen Änderungen des Bytecode-Befehlssatzes.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage