Heim > Web-Frontend > js-Tutorial > Hauptteil

Der Unterschied zwischen alarm() und console.log() in den Javascript_Javascript-Fähigkeiten

WBOY
Freigeben: 2016-05-16 15:42:47
Original
1245 Leute haben es durchsucht

[1]alert()

[1.1] Es hat eine blockierende Wirkung, wenn Sie nicht auf OK klicken, kann nachfolgender Code nicht weiter ausgeführt werden

[1.2] alarm() kann nur einen String ausgeben. Wenn die Alarmausgabe ein Objekt ist, wird die toString()-Methode automatisch aufgerufen

z. B. warning([1,2,3]);//'1,2,3'

[1.3] Warnung unterstützt nicht das Schreiben mehrerer Parameter und kann nur den ersten Wert ausgeben

z. B. warning(1,2,3);//1

[2]console.log()

[2.1] Ausgabe auf der Druckstation

[2.2] Kann jede Art von Daten drucken

z. B. console.log([1,2,3]);//[1,2,3]

[2.3] Unterstützt das Schreiben mehrerer Parameter

z. B. console.log(1,2,3)// 1 2 3

Die Ergebnisse von Alert und console.log sind unterschiedlich?

score = [1,2,3];
sortedScore = [];
console.log(score);
sortedScore = score.sort(sortNumber)
console.log(sortedScore);
function sortNumber(a, b) {
  return b - a;
}

Nach dem Login kopieren

Die obige Ausgabe:
[3, 2, 1]
[3, 2, 1]

Aber ändern Sie es in Warnung:

score = [1,2,3];
sortedScore = [];
alert(score);
sortedScore = score.sort(sortNumber)
alert(sortedScore);
function sortNumber(a, b) {
  return b - a;
}
Nach dem Login kopieren

Die obige Ausgabe:
1, 2, 3
3, 2, 1

Warum passiert das? Es sollte nicht alles sein:
1, 2, 3
3, 2, 1
?

Nach einigen Recherchen wurde festgestellt, dass es sich um ein Problem mit der Chrome-Implementierung handelte. Wir haben unangemessene Optimierungen für die Ausgabe vorgenommen und die tatsächliche Ausführung von console.log verschoben, was einer „verzögerten“ Auswertung entspricht, wenn auf Referenztypen wie z. B. gestoßen wird Arrays und Objekte treten auf.

https://bugs.webkit.org/show_bug.cgi?id=35801

Dies ist ein sehr historischer Fehler, der letzten Monat in der Entwicklungsversion behoben wurde.

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!