国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Inhaltsverzeichnis
Key Takeaways
zu jQuery oder nicht zu jQuery?
Setup
Testen Sie die API
Die Schnittstelle
OnreadyState gegen Onload
Anforderungsheader
Antworttypen
Cache Busting
Schlussfolgerung
h?ufig gestellte Fragen (FAQs) auf Vanille Ajax ohne jQuery
Was ist Vanilla ajax und wie unterscheidet es sich von JQuery Ajax? W?hrend JQuery AJAX eine vereinfachte, kreuzbrowserkompatible Methode zum Umgang mit AJAX bietet, bietet Vanilla Ajax Ihnen mehr Kontrolle und Verst?ndnis der zugrunde liegenden Prozesse. Es ist auch eine gro?artige Option, wenn Sie Abh?ngigkeiten von externen Bibliotheken wie JQuery reduzieren m?chten.
Wie erstelle ich eine grundlegende AJAX -Anforderung mit Vanilla javaScript? Mit diesem Objekt k?nnen Sie HTTP- oder HTTPS -Anforderungen an einen Webserver senden und die Server -Antwortdaten in Ihr Skript zurückladen. Hier ist ein einfaches Beispiel:
wird Vanilla ajax von allen Browsern unterstützt? ?ltere Versionen von Internet Explorer (dh 6 und früher) verwenden jedoch ein ActiveX -Objekt für Ajax.
Heim Web-Frontend js-Tutorial Ein Leitfaden zu Vanilla ajax ohne jQuery

Ein Leitfaden zu Vanilla ajax ohne jQuery

Feb 19, 2025 am 11:58 AM

Ein Leitfaden zu Vanilla ajax ohne jQuery

Key Takeaways

  • AJAX, kurz für asynchrone JavaScript und XML, erm?glicht teilweise Seitenaktualisierungen, wodurch die Notwendigkeit einer vollst?ndigen Aktualisierung von Seiten verringert und mehr flüssige Benutzererfahrungen erm?glicht werden k?nnen. Die grundlegende Anatomie einer AJAX -Anfrage besteht darin, eine Instanz der erforderlichen Klasse für eine HTTP -Anforderung zu erstellen, die HTTP -Anforderungsmethode und die URL der Seite anzugeben und die Anforderung zu senden.
  • W?hrend JQuery Ajax -Anforderungen vereinfachen kann, ist dies nicht immer erforderlich. Die AJAX -API in Vanille -JavaScript hat signifikante Verbesserungen durchlaufen, und die XMLHTTPrequest -Spezifikation wird nun aus Sicht der Standards als einzelne Entit?t behandelt, was auf eine Verpflichtung der Community hinweist, sich an einen Standard zu halten.
  • Vanille Ajax bietet eine flexible und moderne Front-End-API. Es erm?glicht das Einstellen von Anforderungsheadern, die Angabe der vom Server erwarteten Antwort und das Bustieren des Browser -Cache. W?hrend Ajax einst ein komplexer Prozess war, ist es einfacher und benutzerfreundlicher geworden.

Kurz gesagt, AJAX für asynchrone JavaScript und XML ist ein Mechanismus für teilweise Seitenaktualisierungen. Es erm?glicht Ihnen, die Abschnitte einer Seite mit Daten zu aktualisieren, die vom Server stammen, und vermeiden gleichzeitig die Notwendigkeit einer vollst?ndigen Aktualisierung. Auf diese Weise teilweise Updates zu erstellen, kann bei der Erstellung von Flüssigkeitsnutzererfahrungen wirksam sein und die auf dem Server gesetzte Last verringern.

Dies ist die Anatomie einer grundlegenden AJAX -Anfrage:

var xhr = new XMLHttpRequest();
xhr.open('GET', 'send-ajax-data.php');
xhr.send(null);

Hier erstellen wir eine Instanz der erforderlichen Klasse, um eine HTTP -Anforderung an den Server zu stellen. Wir rufen dann seine offene Methode auf und geben die HTTP -Anforderungsmethode als erste Parameter und die URL der Seite an, die wir als zweites anfordern. Schlie?lich nennen wir seine Send -Methode, die Null als Parameter übergeben wird. Wenn die Anforderung nach dem Abbau der Anfrage (hier verwenden wir GET), sollte dieser Parameter alle Daten enthalten, die wir mit der Anfrage senden m?chten.

Und so würden wir mit der Antwort vom Server umgehen:

xhr.onreadystatechange = function () {
  var DONE = 4; // readyState 4 means the request is done.
  var OK = 200; // status 200 is a successful return.
  if (xhr.readyState === DONE) {
    if (xhr.status === OK) {
      console.log(xhr.responseText); // 'This is the returned text.'
    } else {
      console.log('Error: ' + xhr.status); // An error occurred during the request.
    }
  }
};

Die OnReadyStatechange ist asynchron, was bedeutet, dass er jederzeit aufgerufen wird. Diese Art von Funktionen sind Rückrufe - eine, die aufgerufen wird, sobald einige Verarbeitungen beendet sind. In diesem Fall findet die Verarbeitung auf dem Server statt.

Für diejenigen, die mehr über die Grundlagen von Ajax erfahren m?chten, hat das MDN -Netzwerk einen guten Leitfaden.

zu jQuery oder nicht zu jQuery?

Die gute Nachricht ist also, dass der obige Code in den neuesten gro?en Browsern funktioniert. Die schlechte Nachricht ist, dass es ziemlich verworren ist. Yuck! Ich stecke bereits eine elegante L?sung.

Mit JQuery k?nnte man den gesamten Ausschnitt kondensieren, um:

$.ajax({
  url: 'send-ajax-data.php',
})
.done(function(res) {
  console.log(res);
})
.fail(function(err) {
  console.log('Error: ' + err.status);
});

was sch?n ist. Und in der Tat ist JQuery für viele, einschlie?lich Ihrer wirklich, zum De -facto -Standard geworden, wenn es um Ajax geht. Aber wei?t du was? Dies muss nicht der Fall sein. JQuery existiert, um die h?ssliche Dom -API zu umgehen. Aber ist es wirklich so h?sslich? Oder unverst?ndlich?

Im Rest dieses Artikels m?chte ich Verbesserungen an der Ajax -API in Vanille -JavaScript untersuchen. Die gesamte Spezifikation finden Sie im W3C. Was mir an dieser Spezifikation auff?llt, ist der Name. Es handelt sich nicht mehr um "xmlHttprequest Level 2", sondern "XMLHTTPrequest Level 1" - ein Ergebnis einer 2011er Fusion zwischen den beiden Spezifikationen. In Zukunft wird es aus Sicht der Standards als einzelne Einheit behandelt und der lebende Standard wird XMLHTTPREquest genannt. Dies zeigt, dass die Community Engagement gibt, sich an einen Standard zu halten, und dies kann nur gute Nachrichten für Entwickler bedeuten, die sich von JQuery befreien m?chten.

Also lass uns loslegen…

Setup

Für diesen Artikel verwende ich Node.js im Back-End. Ja, es gibt JavaScript im Browser und auf dem Server. Das Back-End von Node.js ist schlank. Ich ermutige Sie, die gesamte Demo auf GitHub herunterzuladen und mitzumachen. Hier ist das Fleisch und die Kartoffeln des Servers:

var xhr = new XMLHttpRequest();
xhr.open('GET', 'send-ajax-data.php');
xhr.send(null);

Dies überprüft die Anforderungs -URL, um festzustellen, wie die App reagieren soll. Wenn die Anfrage aus dem Skriptverzeichnis stammte, wird die entsprechende Datei mit dem Inhaltstyp der Anwendung/JavaScript bedient. Andernfalls wissen wir, dass wir mit einer AJAX-Anfrage zu tun haben und angemessen reagieren k?nnen. Und wenn keiner davon der Fall ist, wird die Dateiansichten/index.html bedient.

Ich werde den kommentierten Abschnitt erweitern, w?hrend wir vom Server in Ajax -Antworten eintauchen. In Node.js musste ich mit dem Render und Httphandler ein schweres Leben machen:

xhr.onreadystatechange = function () {
  var DONE = 4; // readyState 4 means the request is done.
  var OK = 200; // status 200 is a successful return.
  if (xhr.readyState === DONE) {
    if (xhr.status === OK) {
      console.log(xhr.responseText); // 'This is the returned text.'
    } else {
      console.log('Error: ' + xhr.status); // An error occurred during the request.
    }
  }
};

Die Renderfunktion liest asynchron den Inhalt der angeforderten Datei. Es wird ein Hinweis auf die HTTPHandler -Funktion übergeben, die es dann als Rückruf ausführt. Die Funktion HTTPHandler prüft nach Vorhandensein eines Fehlerobjekts (das beispielsweise vorhanden w?re, wenn die angeforderte Datei nicht ge?ffnet werden kann). Das Bereitstellen von allem ist gut, dient dann dem Inhalt der Datei mit dem entsprechenden HTTP -Statuscode und Inhaltstyp.

Testen Sie die API

Schreiben wir wie bei jeder Sound-Back-End-API einige Einheiten-Tests, um sicherzustellen, dass sie funktioniert. Für diese Tests rufe ich Supertest und Mokka um Hilfe:

$.ajax({
  url: 'send-ajax-data.php',
})
.done(function(res) {
  console.log(res);
})
.fail(function(err) {
  console.log('Error: ' + err.status);
});

Diese stellen sicher, dass unsere App mit dem richtigen Inhaltstyp und dem HTTP -Statuscode auf verschiedene Anforderungen antwortet. Sobald Sie die Abh?ngigkeiten installiert haben, k?nnen Sie diese Tests über den Befehl mit dem NPM -Test ausführen.

Die Schnittstelle

Schauen wir uns nun die Benutzeroberfl?che an, die wir in HTML erstellen:

// app.js
var app = http.createServer(function (req, res) {
  if (req.url.indexOf('/scripts/') >= 0) {
    render(req.url.slice(1), 'application/javascript', httpHandler);
  } else if (req.headers['x-requested-with'] === 'XMLHttpRequest') {
    // Send Ajax response
  } else {
    render('views/index.html', 'text/html', httpHandler);
  }
});

Die HTML sieht gut und ordentlich aus. Wie Sie sehen k?nnen, geschieht die gesamte Aufregung in JavaScript.

OnreadyState gegen Onload

Wenn Sie ein kanonisches Ajax -Buch durchlaufen, finden Sie m?glicherweise überall Onreadystate. Diese Rückruffunktion ist komplett mit verschachtelten IFs und viel Flusen, die es schwierig machen, sich von der Spitze Ihres Kopfes zu erinnern. Lassen Sie uns den Onreadystate- und Onload -Ereignissen von Kopf an Kopf setzen.

var xhr = new XMLHttpRequest();
xhr.open('GET', 'send-ajax-data.php');
xhr.send(null);

Dies ist die Ausgabe in der Konsole:

Ein Leitfaden zu Vanilla ajax ohne jQuery

Das Onreadystate -Ereignis feuert überall. Es feuert zu Beginn jeder Anfrage am Ende und manchmal, nur weil es wirklich gern gefeuert wird. Laut der Spezifikation feuert das Onload -Ereignis nur dann aus, wenn die Anfrage erfolgreich ist. Das Onload -Ereignis ist also eine moderne API, die Sie in Sekunden lang gut genutzt werden k?nnen. Das Onreadystate -Ereignis ist für rückw?rts kompatibel. Das Onload -Ereignis sollte jedoch Ihr Tool der Wahl sein. Das Onload -Ereignis sieht aus wie der Erfolg auf JQuery, nicht?

Es ist Zeit, die 5 -lb -Hanteln beiseite zu legen und zu Arm Curls weiterzugehen.

Anforderungsheader

einstellen

jQuery setzt Anforderungsheader unter den Cover, sodass Ihre Back-End-Technologie wei?, dass es sich um eine AJAX-Anfrage handelt. Im Allgemeinen ist es dem Back-End egal, woher die Get-Anfrage stammt, solange er die richtige Antwort sendet. Dies ist praktisch, wenn Sie Ajax und HTML mit derselben Web -API unterstützen m?chten. Schauen wir uns also an, wie Sie Anforderungsheader in Vanille Ajax festlegen:

xhr.onreadystatechange = function () {
  var DONE = 4; // readyState 4 means the request is done.
  var OK = 200; // status 200 is a successful return.
  if (xhr.readyState === DONE) {
    if (xhr.status === OK) {
      console.log(xhr.responseText); // 'This is the returned text.'
    } else {
      console.log('Error: ' + xhr.status); // An error occurred during the request.
    }
  }
};

Damit k?nnen wir Node.js einchecken:

$.ajax({
  url: 'send-ajax-data.php',
})
.done(function(res) {
  console.log(res);
})
.fail(function(err) {
  console.log('Error: ' + err.status);
});

Wie Sie sehen, ist Vanille Ajax eine flexible und moderne Front-End-API. Es gibt eine Menge Ideen, für die Sie Anforderungsheader verwenden k?nnen, und eine davon ist die Versionierung. Nehmen wir zum Beispiel an, ich m?chte mehr als eine Version dieser Web -API unterstützen. Dies ist nützlich, wenn ich keine URLs brechen und stattdessen einen Mechanismus bereitstellen m?chte, in dem Kunden die gewünschte Version ausw?hlen k?nnen. Wir k?nnen den Anforderungsheader so festlegen wie SO:

// app.js
var app = http.createServer(function (req, res) {
  if (req.url.indexOf('/scripts/') >= 0) {
    render(req.url.slice(1), 'application/javascript', httpHandler);
  } else if (req.headers['x-requested-with'] === 'XMLHttpRequest') {
    // Send Ajax response
  } else {
    render('views/index.html', 'text/html', httpHandler);
  }
});

und im Back-End versuchen Sie:

// app.js
function render(path, contentType, fn) {
  fs.readFile(__dirname + '/' + path, 'utf-8', function (err, str) {
    fn(err, str, contentType);
  });
}
var httpHandler = function (err, str, contentType) {
  if (err) {
    res.writeHead(500, {'Content-Type': 'text/plain'});
    res.end('An error has occured: ' + err.message);
  } else {
    res.writeHead(200, {'Content-Type': contentType});
    res.end(str);
  }
};

node.js gibt Ihnen ein Header -Objekt, mit dem Sie nach Anforderungsüberschriften überprüfen k?nnen. Der einzige Trick ist, dass es sie in Kleinbuchstaben liest.

Wir sind am Haus und haben sich nicht schwitzen lassen! Sie fragen sich vielleicht, was gibt es noch zu wissen über Ajax? Nun, wie w?re es mit ein paar ordentlichen Tricks.

Antworttypen

Sie fragen sich vielleicht, warum ResponText die Serverantwort enth?lt, wenn alles, mit dem ich arbeite, einfach alte JSON ist. Es stellt sich heraus, dass ich nicht den richtigen Reponsetype eingestellt habe. Dieses AJAX-Attribut ist gro?artig, um der Front-End-API zu sagen, welche Art von Antwort vom Server zu erwarten ist. Lassen Sie uns dies also gut nutzen:

var xhr = new XMLHttpRequest();
xhr.open('GET', 'send-ajax-data.php');
xhr.send(null);

Fantastisch, anstatt einen einfachen Text zurückzuschicken, den ich dann in JSON analysieren muss, kann ich der API sagen, was sie erwarten soll. Diese Funktion ist in fast den neuesten gro?en Browsern erh?ltlich. JQuery führt diese Art von Konvertierung natürlich automatisch durch. Aber ist es nicht gro?artig, dass wir jetzt eine bequeme M?glichkeit haben, dasselbe in einfachem JavaScript zu tun? Vanilla Ajax unterstützt viele andere Antworttypen, einschlie?lich XML.

Leider ist im Internet Explorer die Geschichte nicht ganz so gro?artig. Ab dem IE 11 muss das Team noch Unterstützung für xhr.responsetype = ‘JSON’ unterstützen. Diese Funktion soll auf Microsoft Edge ankommen. Der Fehler ist jedoch seit fast zwei Jahren zum Zeitpunkt des Schreibens hervorragend. Ich vermute, dass die Leute von Microsoft hart gearbeitet haben, um den Browser zu überarbeiten. Hoffen wir, dass Microsoft Edge, auch bekannt als Project Spartan, seine Versprechen eingibt.

leider, wenn Sie dieses Problem umgehen müssen:

xhr.onreadystatechange = function () {
  var DONE = 4; // readyState 4 means the request is done.
  var OK = 200; // status 200 is a successful return.
  if (xhr.readyState === DONE) {
    if (xhr.status === OK) {
      console.log(xhr.responseText); // 'This is the returned text.'
    } else {
      console.log('Error: ' + xhr.status); // An error occurred during the request.
    }
  }
};

Cache Busting

Ein Browser -Feature -Feature, die Menschen neigen, ist die F?higkeit, Ajax -Anfragen zu zwischenstrichen. Internet Explorer macht dies beispielsweise standardm??ig. Ich hatte einmal stundenlang Probleme, herauszufinden, warum mein Ajax deswegen nicht funktioniert. Glücklicherweise bastet Jquery den Browser -Cache standardm??ig. Nun, Sie k?nnen in einfachem Ajax zu und ist ziemlich einfach:

$.ajax({
  url: 'send-ajax-data.php',
})
.done(function(res) {
  console.log(res);
})
.fail(function(err) {
  console.log('Error: ' + err.status);
});

Laut der JQuery -Dokumentation ist nur eine Zeitstempelabfrage an das Ende der Anfrage angeh?ngt. Dies macht die Anfrage etwas einzigartig und pleite den Browser -Cache. Sie k?nnen sehen, wie dies aussieht, wenn Sie HTTP AJAX -Anfragen feuern:

Ein Leitfaden zu Vanilla ajax ohne jQuery

tada! Alles ohne Drama.

Schlussfolgerung

Ich hoffe, Sie haben die 300 -Pfund -Bankpresse Vanille Ajax früher genossen. Einer zu einer Zeit war Ajax ein schreckliches Tier, aber nicht mehr. Tats?chlich haben wir alle Grundlagen von Ajax ohne die Krücken, ?hm Fesseln, von JQuery abgelegt.

Ich werde Sie mit einer pr?gnanten M?glichkeit lassen, Ajax -Anrufe zu t?tigen:

// app.js
var app = http.createServer(function (req, res) {
  if (req.url.indexOf('/scripts/') >= 0) {
    render(req.url.slice(1), 'application/javascript', httpHandler);
  } else if (req.headers['x-requested-with'] === 'XMLHttpRequest') {
    // Send Ajax response
  } else {
    render('views/index.html', 'text/html', httpHandler);
  }
});

Und so sieht die Antwort aus:

Ein Leitfaden zu Vanilla ajax ohne jQuery

Vergessen Sie nicht, Sie k?nnen die gesamte Demo auf GitHub finden. Ich würde gerne Ihre Gedanken mit und ohne jQuery in den Kommentaren h?ren.

h?ufig gestellte Fragen (FAQs) auf Vanille Ajax ohne jQuery

Was ist Vanilla ajax und wie unterscheidet es sich von JQuery Ajax? W?hrend JQuery AJAX eine vereinfachte, kreuzbrowserkompatible Methode zum Umgang mit AJAX bietet, bietet Vanilla Ajax Ihnen mehr Kontrolle und Verst?ndnis der zugrunde liegenden Prozesse. Es ist auch eine gro?artige Option, wenn Sie Abh?ngigkeiten von externen Bibliotheken wie JQuery reduzieren m?chten.

Wie erstelle ich eine grundlegende AJAX -Anforderung mit Vanilla javaScript? Mit diesem Objekt k?nnen Sie HTTP- oder HTTPS -Anforderungen an einen Webserver senden und die Server -Antwortdaten in Ihr Skript zurückladen. Hier ist ein einfaches Beispiel:

var xhr = new xmlhttprequest (); xhr.onreadyStatechange = function () {
if (xhr.readystate == 4 && xhr.status == 200)
console.log (json.parse (xhr.responSetext)); ??>
Fehlerbehandlung in Vanille -Ajax kann mit dem Onerror -Ereignishandler des XMLHTTPrequest -Objekts durchgeführt werden. Dieses Ereignis wird ausgel?st, wenn bei der AJAX -Anforderung ein Fehler auftritt. Hier ist ein Beispiel:

var xhr = new xmlhttprequest (); .onError = function () {
console.log ("anfordern fehlgeschlagen ");
}; Die offene Methode des XMLHTTPrequest -Objekts akzeptiert die HTTP -Methode als erstes Argument. Sie k?nnen also "Get" durch "Post" ersetzen. Denken Sie daran, den Header vom Typ des Inhalts mit der SetRequestHeader-Methode vor dem Senden der Anforderung einzustellen. Anfrage, Sie müssen das JSON -Objekt ansprechen und als K?rper der Anfrage senden. Setzen Sie den Inhaltsheader auch auf Anwendung/JSON. Hier ist ein Beispiel:

var xhr = new xmlhttprequest (); .setRequestheader ("Content-Typ", "application/json"); > Sie k?nnen eine AJAX -Anforderung stornieren, indem Sie die ABORT -Methode des XMLHTTPrequest -Objekts aufrufen. Dadurch wird die Anfrage sofort beendet. . Um eine synchrone Anfrage zu stellen, geben Sie falsch als drittes Argument an die offene Methode weiter.

Wie kann ich den Fortschritt einer AJAX -Anforderung überwachen? Der On -Progress -Ereignishandler des XMLHTTPrequest -Objekts. Dieses Ereignis wird mehrfach ausgel?st und liefert die aktuellen Fortschrittsinformationen . Es handelt sich um eine native JavaScript -Funktion und h?ngt nicht von einer externen Bibliothek ab.

wird Vanilla ajax von allen Browsern unterstützt? ?ltere Versionen von Internet Explorer (dh 6 und früher) verwenden jedoch ein ActiveX -Objekt für Ajax.

Das obige ist der detaillierte Inhalt vonEin Leitfaden zu Vanilla ajax ohne jQuery. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erkl?rung dieser Website
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

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

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.

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

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

PHP-Tutorial
1488
72
Wie stelle ich eine HTTP -Anforderung in node.js? Wie stelle ich eine HTTP -Anforderung in node.js? Jul 13, 2025 am 02:18 AM

Es gibt drei g?ngige M?glichkeiten, HTTP-Anforderungen in Node.js zu initiieren: Verwenden Sie integrierte Module, Axios und Knotenfetch. 1. Verwenden Sie das integrierte HTTP/HTTPS-Modul ohne Abh?ngigkeiten, das für grundlegende Szenarien geeignet ist, jedoch eine manuelle Verarbeitung von Datengen?hten und Fehlerüberwachung erfordert, z. 2.Axios ist eine auf Versprechen basierende Bibliothek von Drittanbietern. Es verfügt über eine kurze Syntax und leistungsstarke Funktionen, unterstützt Async/Auseait, automatische JSON -Konvertierung, Interceptor usw. Es wird empfohlen, asynchrone Anforderungsvorg?nge zu vereinfachen. 3.Node-Fetch bietet einen Stil ?hnlich dem Browser-Abruf, basierend auf Versprechen und einfacher Syntax

JavaScript -Datentypen: Primitive VS -Referenz JavaScript -Datentypen: Primitive VS -Referenz Jul 13, 2025 am 02:43 AM

JavaScript -Datentypen sind in primitive Typen und Referenztypen unterteilt. Zu den primitiven Typen geh?ren String, Anzahl, Boolesche, Null, undefiniertes und Symbol. Die Werte sind unver?nderlich und Kopien werden bei der Zuweisung von Werten kopiert, sodass sie sich nicht gegenseitig beeinflussen. Referenztypen wie Objekte, Arrays und Funktionen speichern Speicheradressen, und Variablen, die auf dasselbe Objekt zeigen, wirkt sich gegenseitig aus. Typeof und Instanz k?nnen verwendet werden, um die Typen zu bestimmen, aber auf die historischen Probleme der TypeOfnull zu achten. Das Verst?ndnis dieser beiden Arten von Unterschieden kann dazu beitragen, einen stabileren und zuverl?ssigeren Code zu schreiben.

JavaScript Time Object, jemand erstellt eine EACTEXE, schnellere Website auf Google Chrome usw. JavaScript Time Object, jemand erstellt eine EACTEXE, schnellere Website auf Google Chrome usw. Jul 08, 2025 pm 02:27 PM

Hallo, JavaScript -Entwickler! Willkommen in den JavaScript -Nachrichten dieser Woche! Diese Woche konzentrieren wir uns auf: Oracas Markenstreit mit Deno, neue JavaScript -Zeitobjekte werden von Browsern, Google Chrome -Updates und einigen leistungsstarken Entwickler -Tools unterstützt. Fangen wir an! Der Markenstreit von Oracle mit dem Versuch von Deno Oracle, ein "JavaScript" -Marke zu registrieren, hat Kontroversen verursacht. Ryan Dahl, der Sch?pfer von Node.js und Deno, hat eine Petition zur Absage der Marke eingereicht, und er glaubt, dass JavaScript ein offener Standard ist und nicht von Oracle verwendet werden sollte

Was ist die Cache -API und wie wird sie bei Dienstangestellten verwendet? Was ist die Cache -API und wie wird sie bei Dienstangestellten verwendet? Jul 08, 2025 am 02:43 AM

Cacheapi ist ein Tool, das der Browser zur Cache -Netzwerkanfragen bereitstellt, das h?ufig in Verbindung mit dem Servicearbeiter verwendet wird, um die Leistung der Website und die Offline -Erfahrung zu verbessern. 1. Es erm?glicht Entwicklern, Ressourcen wie Skripte, Stilbl?tter, Bilder usw. Zu speichern; 2. Es kann die Cache -Antworten entsprechend den Anfragen übereinstimmen. 3. Es unterstützt das L?schen bestimmter Caches oder das L?schen des gesamten Cache. 4.. Es kann Cache -Priorit?ts- oder Netzwerkpriorit?tsstrategien durch Servicearbeiter implementieren, die sich auf Fetch -Ereignisse anh?ren. 5. Es wird h?ufig für die Offline -Unterstützung verwendet, die wiederholte Zugriffsgeschwindigkeit, die Vorspannungs -Schlüsselressourcen und den Inhalt des Hintergrundaktualisierungss beschleunigen. 6. Wenn Sie es verwenden, müssen Sie auf die Cache -Versionskontrolle, Speicherbeschr?nkungen und den Unterschied zum HTTP -Caching -Mechanismus achten.

Handlingversprechen: Verkettung, Fehlerbehandlung und Versprechenkombinatoren in JavaScript Handlingversprechen: Verkettung, Fehlerbehandlung und Versprechenkombinatoren in JavaScript Jul 08, 2025 am 02:40 AM

Versprechen ist der Kernmechanismus für den Umgang mit asynchronen Operationen in JavaScript. Das Verst?ndnis von Kettenanrufen, Fehlerbehebung und Kombination ist der Schlüssel zum Beherrschen ihrer Anwendungen. 1. Der Kettenaufruf gibt ein neues Versprechen durch .then () zurück, um asynchrone Prozessverkampferung zu realisieren. Jeder. Dann () erh?lt das vorherige Ergebnis und kann einen Wert oder ein Versprechen zurückgeben; 2. Die Fehlerbehandlung sollte .Catch () verwenden, um Ausnahmen zu fangen, um stille Ausf?lle zu vermeiden, und den Standardwert im Fang zurückgeben, um den Prozess fortzusetzen. 3. Combinatoren wie Promise.All () (erfolgreich erfolgreich erfolgreich nach allen Erfolg), Versprechen.Race () (Die erste Fertigstellung wird zurückgegeben) und Versprechen.Allsettled () (Warten auf alle Fertigstellungen)

Nutzung von Array.Prototyp -Methoden zur Datenmanipulation in JavaScript Nutzung von Array.Prototyp -Methoden zur Datenmanipulation in JavaScript Jul 06, 2025 am 02:36 AM

JavaScript-Array-integrierte Methoden wie .Map (), .filter () und .Reduce () k?nnen die Datenverarbeitung vereinfachen. 1) .Map () wird verwendet, um Elemente eins in eins um Neuarrays zu konvertieren; 2) .Filter () wird verwendet, um Elemente durch Bedingung zu filtern; 3) .Reduce () wird verwendet, um Daten als einzelner Wert zu aggregieren; Missbrauch sollte bei der Verwendung vermieden werden, was zu Nebenwirkungen oder Leistungsproblemen führt.

JS Roundup: Ein tiefes Eintauchen in die JavaScript -Ereignisschleife JS Roundup: Ein tiefes Eintauchen in die JavaScript -Ereignisschleife Jul 08, 2025 am 02:24 AM

Die Ereignisschleife von JavaScript verwaltet asynchrone Vorg?nge, indem sie Call -Stapel, Webapis und Task -Warteschlangen koordinieren. 1. Der Anrufstack führt synchronen Code aus, und wenn er auf asynchrone Aufgaben begegnet, wird er zur Verarbeitung an Webapi übergeben. 2. Nachdem das Webapi die Aufgabe im Hintergrund abgeschlossen hat, wird der Rückruf in die entsprechende Warteschlange (Makroaufgabe oder Micro -Aufgabe) eingebaut. 3. Die Ereignisschleife prüft, ob der Anrufstapel leer ist. Wenn es leer ist, wird der Rückruf aus der Warteschlange herausgenommen und zur Ausführung in den Anrufstapel geschoben. V. 5. Das Verst?ndnis der Ereignisschleife hilft zu vermeiden, den Haupt -Thread zu blockieren und die Codeausführungsreihenfolge zu optimieren.

Ereignis verstehen und in JavaScript DOM -Ereignissen sprudeln und erfassen Ereignis verstehen und in JavaScript DOM -Ereignissen sprudeln und erfassen Jul 08, 2025 am 02:36 AM

Ereignisblasen verbreiten sich vom Zielelement nach au?en zum Vorfahrknoten aus, w?hrend Ereignisfassungen sich von der ?u?eren Schicht nach innen zum Zielelement ausbreiten. 1. Ereignisblasen: Nach dem Klicken auf das untergeordnete Element l?st das Ereignis den H?rer des übergeordneten Elements nach oben aus. Nach dem Klicken auf die Schaltfl?che gibt es beispielsweise zuerst die untergeordnete und dann entzündete Eltern aus. 2. Ereigniserfassung: Stellen Sie den dritten Parameter auf True ein, so dass der H?rer in der Erfassungsstufe ausgeführt wird, z. B. das Ausl?sen des Capture -Listeners des übergeordneten Elements, bevor Sie auf die Schaltfl?che klicken. 3. Praktische Verwendungszwecke umfassen ein einheitliches Management von Ereignissen für Kinderelemente, Vorverarbeitung und Leistungsoptimierung von Abfangen. V.

See all articles