it-swarm.com.de

Was sind die Unterschiede zwischen der Javascript-Engine von Firefox und Chrome V8?

Ich habe festgestellt, dass Chrome und Firefox unterschiedliche Zeit benötigen, um bestimmte Dinge zu rendern. Im Allgemeinen war Chrome schneller. Was sollte ich über beide wissen (und IE8/9 auch, denke ich), wenn ich eine Javascript/jQuery-App konstruiere?

7
Jason

Tatsächlich sind sich Spidermonkey (FF) und V8 (Chrome) in der zentralen JavaScript-Engine-API sehr ähnlich, da beide versuchen, standardkonform zu sein. Der Hauptunterschied ist, dass Spidermonkey dazu neigt, einige nette Extras zu seiner API hinzuzufügen, wenn sie dies für nötig halten. All dies finden Sie im Mozilla Development Center (MDC) für JavaScript und gut dokumentiert, wenn es sich nicht um einen Standard handelt. Ich persönlich durchsuche den MDC als meine Hauptquelle für die JavaScript-API.

Diese Geschichte ist für IE völlig anders. Während die meisten der Kern-APIs wie Math und String identisch sind, unterscheidet sich IE erheblich, wenn es um das document -Objekt und jede Manipulation darin geht Stimmen Sie balexandre zu und sagen Sie, dass jQuery sehr gute Arbeit leistet, um dieses Chaos für Sie zu beseitigen.

Das Letzte, was ich erwähnen werde, ist, dass jede Engine den JavaScript-Code unterschiedlich verarbeitet (einige schneller, andere langsamer usw.), aber dies kann meistens als Blackbox betrachtet werden und alles, worüber Sie sich Sorgen machen sollten, sind die Unterschiede in der APIs.

5
Mike

Wenn Sie eine jQuery-App schreiben, brauchen Sie sich um nichts zu kümmern während Sie sich zu einem Framework/einer Bibliothek entwickeln, das/die (heute) funktioniert und dies auch weiterhin tun wird ( in zukünftigen versionen) alles unter der haube.

wenn Sie Sie schreiben einfaches Javascript, dann ist alles ein Durcheinander :)

da Sie Ihre App nicht in einem Browser entwickeln müssen, sondern in allen anderen Browsern testen müssen und Dinge wie das Öffnen von Fenstern und das Verarbeiten von Ajax-Aufrufen von Engine zu Engine unterschiedlich sind ...

also ... bitte ziele weiter auf jQuery :) er wird das harte Zeug für dich tun;)

2
balexandre