suchen
HeimWeb-Frontendjs-TutorialZusammenfassung der bei der Interviewentwicklung häufig verwendeten JavaScript-Wissenspunkte


Nr. 1. Syntax und Typ

1. Variablentyp: var, Variable definieren let; Definieren Sie lokale Variablen des Blockbereichs (Scope); definieren Sie schreibgeschützte Konstanten.

Variablenformat: beginnt mit einem Buchstaben, Unterstrich „_“ oder $-Symbol, Groß-/Kleinschreibung beachten.

Variablenzuweisung: Eine Variable, die deklariert, aber nicht zugewiesen ist, hat bei Verwendung den Wert undefiniert. Wenn eine nicht deklarierte Variable direkt verwendet wird, wird eine Ausnahme ausgelöst.

Nicht zugewiesene Variable zur Berechnung: Das Ergebnis ist NaN. Zum Beispiel:

 

2. Geltungsbereich
var x, y = 1;
console.log(x + y); //结果为NaN,因为x没有赋值。

  Variablenumfang: Vor ES6 gab es keinen Blockdeklarationsumfang und Variablen agierten in Funktionsblöcken oder global. Wie im folgenden Code gezeigt, ist die Eingabe x 5.

ES6-Variablenbereich: ES6 unterstützt den Blockbereich, Sie müssen jedoch let verwenden, um Variablen zu deklarieren. Die folgende Codeausgabe führt dazu, dass eine Ausnahme ausgelöst wird.

if (true) {
var x = 5;
}
console.log(x); // 5

Variable Floating: Wenn wir in einer Methode oder einem globalen Code die Variable verwenden, bevor die Variable deklariert wird, wird keine Ausnahme ausgelöst, sondern undefiniert zurückgegeben. Dies liegt daran, dass JavaScript die Variablendeklaration automatisch an den Anfang der Funktion oder global platziert. Zum Beispiel der folgende Code:

f (true) {
let y = 5;
}
console.log(y); // ReferenceError: y is not defined1234

Der obige Code entspricht dem folgenden Code:

/**
* 全局变量上浮
*/
console.log(x === undefined); // logs "true"
var x = 3;

/**
* 方法变量上浮
*/
var myvar = "my value";
// 打印变量myvar结果为:undefined
(function() {
console.log(myvar); // undefined
var myvar = "local value";
})();

Globale Variablen: Auf der Seite ist das globale Objekt Fenster, also wir Zugriff auf globale Variablen. Verfügbar über window.variable. Zum Beispiel:

/**
* 全局变量上浮
*/
var x;
console.log(x === undefined); // logs "true"
x = 3;

/**
* 方法变量上浮
*/
var myvar = "my value";
(function() {
var myvar;
console.log(myvar); // undefined
myvar = "local value";
})();

Nr. 2. Datenstruktur und -typ

version = "1.0.0";
console.log(window.version); //输出1.0.0

1 Datentyp

6 Grundtypen: Boolesch (wahr oder falsch) , null (bei js wird zwischen Groß- und Kleinschreibung unterschieden, anders als Null und NULL), undefiniert, Zahl, Zeichenfolge, Symbol (als eindeutig und unveränderlich markiert)

Ein Objekttyp: Objekt.

Objekt und Funktion: Objekte dienen als Wertebehälter und Funktionen als Anwendungsverfahren.

 

2. Datenkonvertierung

  Funktion: Mit den Methoden parseInt und parseFloat können Zeichenfolgen in Zahlen umgewandelt werden.

parseInt: Die Funktionssignatur ist parseInt(string, radix), radix ist eine Zahl von 2 bis 36, die die digitale Basis darstellt, z. B. dezimal oder hexadezimal. Das Rückgabeergebnis ist eine Ganzzahl oder NaN. Die folgenden Ausgabeergebnisse sind beispielsweise alle 15.

parseFloat: Die Funktionssignatur ist parseFloat(string) und das Rückgabeergebnis ist eine Zahl oder NaN. Zum Beispiel:

parseInt("0xF", 16);
parseInt("F", 16);
parseInt("17", 8);
parseInt(021, 8);
parseInt("015", 10);
parseInt(15.99, 10);
arseInt("15,123", 10);
parseInt("FXX123", 16);
parseInt("1111", 2);
parseInt("15*3", 10);
parseInt("15e2", 10);
parseInt("15px", 10);

3. Datentyp-Textualisierung
parseFloat("3.14"); //返回数字
parseFloat("314e-2"); //返回数字
parseFloat("more non-digit characters"); //返回NaN

Textualisierungstyp: Array, Boolean, Gleitkomma, Ganzzahlen, Objekt, RegExp, String.

Zusätzliche Kommas im Array: ["Lion", , "Angel"], die Länge beträgt 3 und der Wert von [1] ist unbestimmt. ['home', , 'school', ], das letzte Komma wird weggelassen, daher beträgt die Länge 3. [ , 'home', , 'school'], Länge ist 4. ['home', , 'school', , ], Länge ist 4.

Ganzzahl: Ganzzahl kann als Dezimalzahl, Oktalzahl, Hexadezimalzahl oder Binärzahl ausgedrückt werden. Zum Beispiel:

Gleitkommazahl: [(+|-)][Ziffern][.Ziffern][(E|e)[(+|-)]Ziffern]. Beispiel:

0, 117 and -345 //十进制
015, 0001 and -0o77 //八进制
0x1123, 0x00111 and -0xF1A7 //十六进制
0b11, 0b0011 and -0b11 1234 //二进制

Objekt: Der Attributwert des Objekts kann über „.property“ oder „[Eigenschaftsname]“ abgerufen werden. Beispiel:

3.1415926,-.123456789,-3.1E+12(3100000000000),.1e-23(1e-24)

Objektattribute: Der Attributname kann eine beliebige Zeichenfolge oder eine leere Zeichenfolge sein. Ungültige Namen können in Anführungszeichen eingeschlossen werden. Komplexe Namen können nicht über . abgerufen werden, wohl aber über []. Zum Beispiel:

var car = { manyCars: {a: "Saab", "b": "Jeep"}, 7: "Mazda" };
console.log(car.manyCars.b); // Jeep
console.log(car[7]); // Mazda

Escape-Zeichen: Die folgende String-Ausgabe enthält doppelte Anführungszeichen, da das Escape-Symbol „““ verwendet wird.

var unusualPropertyNames = {
"": "An empty string",
"!": "Bang!"
}
console.log(unusualPropertyNames.""); // SyntaxError: Unexpected string
console.log(unusualPropertyNames[""]); // An empty string
console.log(unusualPropertyNames.!); // SyntaxError: Unexpected token !
console.log(unusualPropertyNames["!"]); // Bang!

String-Wrapping-Methode: Fügen Sie „“ direkt an hinzu das Ende der Zeichenfolge, wie im folgenden Code gezeigt:

var quote = "He read \"The Cremation of Sam McGee\" by R.W. Service.";
console.log(quote);
//输出:He read "The Cremation of Sam McGee" by R.W. Service.1。

Nr3. Kontrollfluss und Fehlerbehandlung

var str = "this string \
is broken \
across multiple\
lines."
console.log(str); // this string is broken across multiplelines.
 

1 🎜> Funktion: Blockausdrücke werden im Allgemeinen für den Kontrollfluss verwendet, z. B. if, for, while. Im folgenden Code ist {x++;} ein Blockfeld. Vor ES6 wurden Variablen definiert im Block waren tatsächlich in der Methode enthalten oder global, und der Einfluss der Variablen überstieg den Umfang des Blocks. Das endgültige Ausführungsergebnis des folgenden Codes ist beispielsweise 2, da die im Block deklarierten Variablen darauf wirken. Methode.

Nach ES6 gibt es einen Blockbereich: In ES6 können wir die Blockbereichsdeklaration var ändern, sodass die Variable nur den Bereich des Blockbereichs abdeckt. 2. Logische Beurteilung 🎜> Als falsch beurteilte Sonderwerte: false, undefiniert, null, 0, NaN, ""

Einfache boolesche und Objekt-boolesche Typen: einfacher boolescher Typ. Es gibt einen Unterschied zwischen false und true vom booleschen Objekttyp. Sie sind nicht gleich, wie im folgenden Beispiel:

while (x < 10) {
x++;
}

Nr. 4. Ausnahmebehandlung

var x = 1;
{
var x = 2;
}
console.log(x); // outputs 2

1 .Ausnahmetyp

Auslöser-Ausnahmesyntax: Auslöser-Ausnahme kann beliebiger Art sein, wie unten gezeigt:

Schlüsselwort: Verwendung try{}catch(e){}finally{}-Syntax, ähnlich der C#-Syntax

„finally“-Rückgabewert: „if finaly“: Nach dem Hinzufügen der return-Anweisung wird unabhängig davon, was der gesamte try.catch zurückgibt, der Rückgabewert ist die endgültige Rückkehr, wie unten gezeigt:

function f() {
    try {
        console.log(0);
        throw "bogus";
    } catch(e) {
        console.log(1);
        return true; // 返回语句被暂停,直到finally执行完成
        console.log(2); // 不会执行的代码
    } finally {
        console.log(3);
        return false; //覆盖try.catch的返回
        console.log(4); //不会执行的代码
    }
    // "return false" is executed now 
    console.log(5); // not reachable
}
f(); // 输出 0, 1, 3; 返回 false

  finally吞并异常:如果finally有return并且catch中有throw异常。throw的异常不会被捕获,因为已经被finally的return覆盖了。如下代码所示:

function f() {
    try {
        throw "bogus";
    } catch(e) {
        console.log(&#39;caught inner "bogus"&#39;);
        throw e; // throw语句被暂停,直到finally执行完成
    } finally {
        return false; // 覆盖try.catch中的throw语句
    }
    // 已经执行了"return false"
}

try {
    f();
} catch(e) {
    //这里不会被执行,因为catch中的throw已经被finally中的return语句覆盖了
    console.log(&#39;caught outer "bogus"&#39;);
}
// 输出
// caught inner "bogus"

  系统Error对象:我们可以直接使用Error{name, message}对象,例如:throw (new Error('The message'));

 以上就是面试开发常用的 JavaScript 知识点总结的内容,更多相关内容请关注PHP中文网(www.php.cn)! 


Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
JavaScript -Frameworks: Stromversorgung moderner WebentwicklungJavaScript -Frameworks: Stromversorgung moderner WebentwicklungMay 02, 2025 am 12:04 AM

Die Kraft des JavaScript -Frameworks liegt in der Vereinfachung der Entwicklung, der Verbesserung der Benutzererfahrung und der Anwendungsleistung. Betrachten Sie bei der Auswahl eines Frameworks: 1. Projektgröße und Komplexität, 2. Teamerfahrung, 3. Ökosystem und Community -Unterstützung.

Die Beziehung zwischen JavaScript, C und BrowsernDie Beziehung zwischen JavaScript, C und BrowsernMay 01, 2025 am 12:06 AM

Einführung Ich weiß, dass Sie es vielleicht seltsam finden. Was genau muss JavaScript, C und Browser tun? Sie scheinen nicht miteinander verbunden zu sein, aber tatsächlich spielen sie eine sehr wichtige Rolle in der modernen Webentwicklung. Heute werden wir die enge Verbindung zwischen diesen drei diskutieren. In diesem Artikel erfahren Sie, wie JavaScript im Browser ausgeführt wird, die Rolle von C in der Browser -Engine und wie sie zusammenarbeiten, um das Rendern und die Interaktion von Webseiten voranzutreiben. Wir alle kennen die Beziehung zwischen JavaScript und Browser. JavaScript ist die Kernsprache der Front-End-Entwicklung. Es läuft direkt im Browser und macht Webseiten lebhaft und interessant. Haben Sie sich jemals gefragt, warum Javascr

Node.js Streams mit TypeScriptNode.js Streams mit TypeScriptApr 30, 2025 am 08:22 AM

Node.js zeichnet sich bei effizienten E/A aus, vor allem bei Streams. Streams verarbeiten Daten inkrementell und vermeiden Speicherüberladung-ideal für große Dateien, Netzwerkaufgaben und Echtzeitanwendungen. Die Kombination von Streams mit der TypeScript -Sicherheit erzeugt eine POWE

Python vs. JavaScript: Leistung und EffizienzüberlegungenPython vs. JavaScript: Leistung und EffizienzüberlegungenApr 30, 2025 am 12:08 AM

Die Unterschiede in der Leistung und der Effizienz zwischen Python und JavaScript spiegeln sich hauptsächlich in: 1 wider: 1) Als interpretierter Sprache läuft Python langsam, weist jedoch eine hohe Entwicklungseffizienz auf und ist für eine schnelle Prototypentwicklung geeignet. 2) JavaScript ist auf einen einzelnen Thread im Browser beschränkt, aber Multi-Threading- und Asynchronen-E/A können verwendet werden, um die Leistung in Node.js zu verbessern, und beide haben Vorteile in tatsächlichen Projekten.

Die Ursprünge von JavaScript: Erforschung seiner ImplementierungsspracheDie Ursprünge von JavaScript: Erforschung seiner ImplementierungsspracheApr 29, 2025 am 12:51 AM

JavaScript stammt aus dem Jahr 1995 und wurde von Brandon Ike erstellt und realisierte die Sprache in C. 1.C-Sprache bietet Programmierfunktionen auf hoher Leistung und Systemebene für JavaScript. 2. Die Speicherverwaltung und die Leistungsoptimierung von JavaScript basieren auf C -Sprache. 3. Die plattformübergreifende Funktion der C-Sprache hilft JavaScript, auf verschiedenen Betriebssystemen effizient zu laufen.

Hinter den Kulissen: Welche Sprache macht JavaScript?Hinter den Kulissen: Welche Sprache macht JavaScript?Apr 28, 2025 am 12:01 AM

JavaScript wird in Browsern und Node.js -Umgebungen ausgeführt und stützt sich auf die JavaScript -Engine, um Code zu analysieren und auszuführen. 1) abstrakter Syntaxbaum (AST) in der Parsenstufe erzeugen; 2) AST in die Kompilierungsphase in Bytecode oder Maschinencode umwandeln; 3) Führen Sie den kompilierten Code in der Ausführungsstufe aus.

Die Zukunft von Python und JavaScript: Trends und VorhersagenDie Zukunft von Python und JavaScript: Trends und VorhersagenApr 27, 2025 am 12:21 AM

Zu den zukünftigen Trends von Python und JavaScript gehören: 1. Python wird seine Position in den Bereichen wissenschaftlicher Computer und KI konsolidieren. JavaScript wird die Entwicklung der Web-Technologie fördern. Beide werden die Anwendungsszenarien in ihren jeweiligen Bereichen weiter erweitern und mehr Durchbrüche in der Leistung erzielen.

Python vs. JavaScript: Entwicklungsumgebungen und ToolsPython vs. JavaScript: Entwicklungsumgebungen und ToolsApr 26, 2025 am 12:09 AM

Sowohl Python als auch JavaScripts Entscheidungen in Entwicklungsumgebungen sind wichtig. 1) Die Entwicklungsumgebung von Python umfasst Pycharm, Jupyternotebook und Anaconda, die für Datenwissenschaft und schnelles Prototyping geeignet sind. 2) Die Entwicklungsumgebung von JavaScript umfasst Node.JS, VSCODE und WebPack, die für die Entwicklung von Front-End- und Back-End-Entwicklung geeignet sind. Durch die Auswahl der richtigen Tools nach den Projektbedürfnissen kann die Entwicklung der Entwicklung und die Erfolgsquote der Projekte verbessert werden.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

VSCode Windows 64-Bit-Download

VSCode Windows 64-Bit-Download

Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

SublimeText3 Englische Version

SublimeText3 Englische Version

Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen