it-swarm.com.de

Javascript in HTML vs in einer .js-Datei

Ich habe gehört, dass das Setzen des Javascript im HTML-Code nicht gut für SEO ist und dass es besser ist, es in eine .js-Datei zu setzen. Es ist klar, dass es den Code verständlicher macht, aber ist es der einzige Grund?

1
paragooon

Andere Gründe, JavaScript in externen Dateien zu belassen:

  1. Seiten werden normalerweise schneller geladen, da JavaScript und Stylesheets vom Browser zwischengespeichert werden .
  2. Das Überprüfen auf Skriptfehler mit JSLint wird einfacher.
  3. Die Wiederverwendung von Code zwischen Seiten wird einfach.
  4. Das Reduzieren von JavaScript zur Reduzierung der Dateigröße bei gleichzeitiger Beibehaltung nicht verkleinerter Versionen zur Bearbeitung ist einfacher.
  5. Zentrales Hosting von gemeinsamen Dateien wird möglich. (z. B. Google Libraries API )

Beachten Sie, dass die Verwendung von JavaScript für die Suchmaschinenoptimierung (extern oder intern) kaum einen Unterschied macht, es sei denn:

  1. Es wird verwendet, um Links oder andere dynamische Inhalte auf der Seite zu generieren.
  2. Ihre Skripte sind so groß, dass sie die Ladezeit der Seite drastisch verlängern.

Im Fall von 1 ist es am besten, keine Links mit clientseitigem JavaScript zu erstellen, wenn Sie können. Im Fall von 2 empfiehlt es sich, Stylesheets und JavaScript zu minimieren und dann Dateien zu kombinieren, um sie mit möglichst wenigen HTTP-Anforderungen zu bedienen.

7
Nick

Wenn Sie das JavaScript in den HTML-Code einfügen, muss der Benutzer das JavaScript für jede angezeigte Seite herunterladen, die es benötigt.

Wenn Sie es zu einer externen Datei machen, müssen sie es einmal herunterladen, was aufgrund der zusätzlichen HTTP-Anforderung etwas langsamer ist als das Einfügen in die Seite. Danach wird es jedoch zwischengespeichert und muss nicht erneut heruntergeladen werden.

In Bezug auf die Auswirkungen auf SEO ist dies der Vorteil - Ihre Website ist schneller, was Google sehr belohnt.

Dies bedeutet, dass wenn Sie ein Stück JavaScript haben, das ein Benutzer wiederholt benötigen wird, es extern sein sollte. Wenn es sich um eine einmalige Anforderung handelt, sollten Sie sie auf der Seite einfügen, um die Anzahl der HTTP-Anforderungen zu verringern.

Beispiele, bei denen On-Page-JavaScript von Vorteil sein kann:

  • Arbitrage-Werbeseiten, bei denen ein Benutzer in der Regel reingezogen und wieder herausgeholt wird. Der Benutzer wird sich normalerweise nicht umsehen. Wenn Sie jedoch erwarten, dass der Benutzer wiederkommt, sollten Sie das JavaScript wahrscheinlich extern machen, damit es bei der Rückkehr zwischengespeichert wird.
  • Einseitige Websites. Die gleiche Einschränkung gilt für Arbitrage-Sites.
  • Seiten, die ein völlig anderes JavaScript verwenden als jede andere Seite Ihrer Website. Wenn Sie zum Beispiel einen JavaScript-Regler auf einer bestimmten Seite Ihrer Website haben und die meisten Ihrer Besucher diese Seite nur einmal betrachten, lohnt es sich für die SEO wahrscheinlich, JavaScript in die Kopfzeile aufzunehmen.

Für die Codeverwaltung empfiehlt es sich weiterhin, den Code in einer externen Datei zu entwickeln und dann mithilfe eines Bereitstellungsskripts den Code zu erfassen und für die Produktionsversion des Codes einzufügen.

Schließlich sollten gemeinsam genutzte Bibliotheken wie jQuery immer extern sein, da sie häufig bereits von einer anderen Site, die sie besucht haben, im Browser eines Besuchers zwischengespeichert werden.

2
Dan Blows

Es gibt zwei zusätzliche Gründe für externe JS-Dateien.

  1. Caching. Sobald eine externe JS-Datei zum ersten Mal vom Browser heruntergeladen wird, bleibt sie im Cache des Browsers und derselbe Code muss nicht jedes Mal heruntergeladen werden, wenn ein Besucher eine Seite erreicht, die er nicht geöffnet hat

  2. Code-Management. Wenn Sie Ihr Skript ändern möchten, müssen Sie dies einmal tun, indem Sie die JS-Datei ändern. Der gleiche Effekt kann durch die serverseitige Einbindung direkt in ein HTML-Dokument erzielt werden, aber der Vorteil der Zwischenspeicherung (Punkt (1)) ist nicht mehr vorhanden.

1
wssbck