1. Verwenden Sie === anstelle von ==
JavaScript verwendet zwei verschiedene Gleichheitsoperatoren: ===|!== und ==|!=, bei Vergleichsoperationen ist die Verwendung des ersteren Best Practice.
„Wenn beide Operanden den gleichen Typ und Wert haben, gibt === true und !== false zurück – JavaScript: Language Essence
Bei Verwendung von == und! =, kann es zu einer Situation kommen, in der die Typen unterschiedlich sind. In diesem Fall werden die Typen der Operanden gezwungen, gleich zu sein und dann verglichen, was möglicherweise nicht das gewünschte Ergebnis ist.
2.Eval == Evil
Wenn wir es zunächst nicht kennen, gibt uns „eval“ Zugriff auf den JavaScript-Compiler (Anmerkung: Das scheint sehr mächtig zu sein). Im Wesentlichen können wir bei der Ausführung einen String als Parameter an eval übergeben.
Dies verringert nicht nur die Leistung des Skripts erheblich (Anmerkung: Der JIT-Compiler kann den Inhalt des Strings nicht vorhersagen und nicht vorkompilieren und optimieren), sondern birgt auch enorme Sicherheitsrisiken, da der auszuführende Text dies auch tut groß. Hohe Autorität, bleib weg.
3. Das Weglassen erspart möglicherweise keinen Ärger
Technisch gesehen können Sie die meisten geschweiften Klammern und Semikolons weglassen. Die meisten Browser werden den folgenden Code richtig verstehen:
if(someVariableExists) x = false
Dann, wenn jemand so ist:
if(someVariableExists) x = false anotherFunctionCall();
jemand, den Sie vielleicht denken dass der obige Code dem Folgenden entspricht:
if(someVariableExists) { x = false; anotherFunctionCall(); }
Leider ist dieses Verständnis falsch. Die tatsächliche Bedeutung ist wie folgt:
if(someVariableExists) { x = false; } anotherFunctionCall();
Möglicherweise ist Ihnen aufgefallen, dass die Einrückung oben leicht die Illusion von geschweiften Klammern vermittelt. Zu Recht ist dies eine schreckliche Praxis und sollte unbedingt vermieden werden. Es gibt nur einen Fall, in dem die geschweiften Klammern weggelassen werden können, nämlich wenn es nur eine Zeile gibt, aber das ist umstritten.
if(2 + 2 === 4) return 'nicely done';
Denken Sie voraus
Es besteht die Möglichkeit, dass Sie eines Tages weitere Anweisungen zu Ihrem if-Block hinzufügen müssen. In diesem Fall müssen Sie diesen Code neu schreiben. Fazit: Auslassungen sind ein Minenfeld.
4. Platzieren Sie das Skript am Ende der Seite
Denken Sie daran – das Hauptziel besteht darin, die Seite so schnell wie möglich zu präsentieren Blockierung: Der Browser kann den folgenden Inhalt nicht weiter rendern, bis er geladen und ausgeführt wird. Daher müssen Benutzer länger warten.
Wenn Ihr js nur zur Verstärkung des Effekts verwendet wird – zum Beispiel ein Button-Click-Ereignis – platzieren Sie das Skript sofort vor dem Ende des Textkörpers. Dies ist definitiv die beste Vorgehensweise.
5. Vermeiden Sie die Deklaration von Variablen innerhalb einer For-Anweisung
Wenn Sie eine lange for-Anweisung ausführen, halten Sie den Anweisungsblock so prägnant wie möglich, zum Beispiel:
Ups:
for(var i = 0; i
Beachten Sie, dass jede Schleife die Länge des Arrays berechnen muss und jedes Mal den Dom durchlaufen muss, um das „Container“-Element abzufragen – die Effizienz ist sehr gering!
Empfehlungen:
var container = document.getElementById('container'); for(var i = 0, len = someArray.length; i
6. Der beste Weg, eine Zeichenfolge zu erstellen
Wenn Sie über ein Array iterieren müssen oder Objekt, denken Sie nicht immer an die „für“-Anweisung, seien Sie kreativ, Sie können immer einen besseren Weg finden, zum Beispiel wie den folgenden.
var arr = ['item 1', 'item 2', 'item 3', ...]; var list = '
- ' + arr.join('
- ') + '
Ich bin nicht dein Gott, aber bitte glaub mir (wenn du mir nicht glaubst, teste es selbst) – das ist bei weitem die schnellste Methode!
Die Verwendung von nativem Code (z. B. join()) ist unabhängig davon, was das System intern tut, normalerweise viel schneller als die Verwendung von nicht nativem Code.
7. Reduzieren Sie globale Variablen
“Solange mehrere globale Variablen unter einem Namensraum organisiert sind, wird die Interaktion mit anderen Anwendungen, Komponenten oder Klassen erheblich reduziert. “ – Douglas Crockford
var name = 'Jeffrey'; var lastName = 'Way'; function doSomething() {...} console.log(name); // Jeffrey -- 或 window.name// 更好的做法var DudeNameSpace = { name : 'Jeffrey', lastName : 'Way', doSomething : function() {...} } console.log(DudeNameSpace.name); // Jeffrey
Hinweis: Dies wird einfach „DudeNameSpace“ genannt. Ein vernünftigerer Name.
8. Kommentare zum Code hinzufügen
Es scheint unnötig, aber bitte glauben Sie mir, versuchen Sie, Ihrem Code vernünftigere Kommentare hinzuzufügen. Wenn Sie einige Monate später auf Ihr Projekt zurückblicken, erinnern Sie sich möglicherweise nicht mehr an Ihre ursprünglichen Gedanken. Oder was ist, wenn einer Ihrer Kollegen Änderungen an Ihrem Code vornehmen muss? Alles in allem ist das Hinzufügen von Kommentaren zu Ihrem Code ein wichtiger Teil.
// 循环数组,输出每项名字(译者注:这样的注释似乎有点多余吧)for(var i = 0, len = array.length; i
9. Nutzen Sie die progressive Verbesserung
Sorgen Sie für eine reibungslose Degradierung, wenn Javascript deaktiviert ist. Wir sind immer versucht zu denken: „Die meisten meiner Besucher haben bereits JavaScript aktiviert, also muss ich mir keine Sorgen machen.“ Dies ist jedoch ein großes Missverständnis.
Haben Sie sich jemals einen Moment Zeit genommen, um zu sehen, wie Ihre schöne Seite aussieht, wenn Javascript deaktiviert ist? (Dies ist einfach, indem Sie das Web Developer-Tool herunterladen (Anmerkung des Übersetzers: Chrome-Benutzer laden es im App Store herunter, IE-Benutzer stellen es in den Internetoptionen ein)), aber dies kann Ihre Website beschädigen. Als Faustregel gilt: Entwerfen Sie Ihre Website unter der Annahme, dass JavaScript deaktiviert ist, und verbessern Sie dann auf dieser Grundlage schrittweise Ihre Website.
10. Übergeben Sie keine String-Parameter an „setInterval“ oder „setTimeout“
Beachten Sie den folgenden Code:
setInterval( "document.getElementById('container').innerHTML += 'My new number: ' + i", 3000 );
不仅效率低下,而且这种做法和"eval"如出一辙。从不给setInterval和setTimeout传递字符串作为参数,而是像下面这样传递函数名。
setInterval(someFunction, 3000);
11.不要使用"with"语句
乍一看,"with"语句看起来像一个聪明的主意。基本理念是,它可以为访问深度嵌套对象提供缩写,例如……
with (being.person.man.bodyparts) { arms = true; legs = true; }
而不是像下面这样:
being.person.man.bodyparts.arms = true; being.person.man.bodyparts.legs= true;
不幸的是,经过测试后,发现这时“设置新成员时表现得非常糟糕。作为代替,您应该使用变量,像下面这样。
var o = being.person.man.bodyparts; o.arms = true; o.legs = true;
12.使用{}代替 new Ojbect()
在JavaScript中创建对象的方法有多种。可能是传统的方法是使用"new"加构造函数,像下面这样:
ar o = new Object(); o.name = 'Jeffrey'; o.lastName = 'Way'; o.someFunction = function() { console.log(this.name); }
然而,这种方法的受到的诟病不及实际上多。作为代替,我建议你使用更健壮的对象字面量方法。
更好的做法
var o = { name: 'Jeffrey', lastName = 'Way', someFunction : function() { console.log(this.name); } };
注意,果你只是想创建一个空对象,{}更好。
13.使用[]代替 new Array()
这同样适用于创建一个新的数组。
例如:
var a = new Array(); a[0] = "Joe"; a[1] = 'Plumber';// 更好的做法:var a = ['Joe','Plumber'];
“javascript程序中常见的错误是在需要对象的时候使用数组,而需要数组的时候却使用对象。规则很简单:当属性名是连续的整数时,你应该使用数组。否则,请使用对象”——Douglas Crockford
14.定义多个变量时,省略var关键字,用逗号代替
var someItem = 'some string'; var anotherItem = 'another string'; var oneMoreItem = 'one more string';// 更好的做法var someItem = 'some string', anotherItem = 'another string', oneMoreItem = 'one more string';
应而不言自明。我怀疑这里真的有所提速,但它能是你的代码更清晰。
15.使用Firebug的"timer"功能优化你的代码
在寻找一个快速、简单的方法来确定操作需要多长时间吗?使用Firebug的“timer”功能来记录结果。
function TimeTracker(){ console.time("MyTimer"); for(x=5000; x > 0; x--){} console.timeEnd("MyTimer"); }
Das obige ist der detaillierte Inhalt vonAuf welche Details muss bei Javascript geachtet werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Zu den Anwendungen von JavaScript in der realen Welt gehören die serverseitige Programmierung, die Entwicklung mobiler Anwendungen und das Internet der Dinge. Die serverseitige Programmierung wird über node.js realisiert, die für die hohe gleichzeitige Anfrageverarbeitung geeignet sind. 2. Die Entwicklung der mobilen Anwendungen erfolgt durch reaktnative und unterstützt die plattformübergreifende Bereitstellung. 3.. Wird für die Steuerung von IoT-Geräten über die Johnny-Five-Bibliothek verwendet, geeignet für Hardware-Interaktion.

Ich habe eine funktionale SaaS-Anwendung mit mehreren Mandanten (eine EdTech-App) mit Ihrem täglichen Tech-Tool erstellt und Sie können dasselbe tun. Was ist eine SaaS-Anwendung mit mehreren Mietern? Mit Multi-Tenant-SaaS-Anwendungen können Sie mehrere Kunden aus einem Sing bedienen

Dieser Artikel zeigt die Frontend -Integration mit einem Backend, das durch die Genehmigung gesichert ist und eine funktionale edtech SaaS -Anwendung unter Verwendung von Next.js. erstellt. Die Frontend erfasst Benutzerberechtigungen zur Steuerung der UI-Sichtbarkeit und stellt sicher, dass API-Anfragen die Rollenbasis einhalten

JavaScript ist die Kernsprache der modernen Webentwicklung und wird für seine Vielfalt und Flexibilität häufig verwendet. 1) Front-End-Entwicklung: Erstellen Sie dynamische Webseiten und einseitige Anwendungen durch DOM-Operationen und moderne Rahmenbedingungen (wie React, Vue.js, Angular). 2) Serverseitige Entwicklung: Node.js verwendet ein nicht blockierendes E/A-Modell, um hohe Parallelitäts- und Echtzeitanwendungen zu verarbeiten. 3) Entwicklung von Mobil- und Desktop-Anwendungen: Die plattformübergreifende Entwicklung wird durch reaktnative und elektronen zur Verbesserung der Entwicklungseffizienz realisiert.

Zu den neuesten Trends im JavaScript gehören der Aufstieg von Typenkripten, die Popularität moderner Frameworks und Bibliotheken und die Anwendung der WebAssembly. Zukunftsaussichten umfassen leistungsfähigere Typsysteme, die Entwicklung des serverseitigen JavaScript, die Erweiterung der künstlichen Intelligenz und des maschinellen Lernens sowie das Potenzial von IoT und Edge Computing.

JavaScript ist der Eckpfeiler der modernen Webentwicklung. Zu den Hauptfunktionen gehören eine ereignisorientierte Programmierung, die Erzeugung der dynamischen Inhalte und die asynchrone Programmierung. 1) Ereignisgesteuerte Programmierung ermöglicht es Webseiten, sich dynamisch entsprechend den Benutzeroperationen zu ändern. 2) Die dynamische Inhaltsgenerierung ermöglicht die Anpassung der Seiteninhalte gemäß den Bedingungen. 3) Asynchrone Programmierung stellt sicher, dass die Benutzeroberfläche nicht blockiert ist. JavaScript wird häufig in der Webinteraktion, der einseitigen Anwendung und der serverseitigen Entwicklung verwendet, wodurch die Flexibilität der Benutzererfahrung und die plattformübergreifende Entwicklung erheblich verbessert wird.

Python eignet sich besser für Datenwissenschaft und maschinelles Lernen, während JavaScript besser für die Entwicklung von Front-End- und Vollstapel geeignet ist. 1. Python ist bekannt für seine prägnante Syntax- und Rich -Bibliotheks -Ökosystems und ist für die Datenanalyse und die Webentwicklung geeignet. 2. JavaScript ist der Kern der Front-End-Entwicklung. Node.js unterstützt die serverseitige Programmierung und eignet sich für die Entwicklung der Vollstapel.

JavaScript erfordert keine Installation, da es bereits in moderne Browser integriert ist. Sie benötigen nur einen Texteditor und einen Browser, um loszulegen. 1) Führen Sie sie in der Browser -Umgebung durch, indem Sie die HTML -Datei durch Tags einbetten. 2) Führen Sie die JavaScript -Datei nach dem Herunterladen und Installieren von node.js nach dem Herunterladen und Installieren der Befehlszeile aus.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.