Diskussion:JavaScript

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Diese Diskussionsseite dient dazu, Verbesserungen am Artikel „JavaScript“ zu besprechen.

Persönliche Betrachtungen zum Thema gehören nicht hierher. Für allgemeine Wissensfragen gibt es die Auskunft.

Füge neue Diskussionsthemen unten an:

Klicke auf Abschnitt hinzufügen, um ein neues Diskussionsthema zu beginnen, und unterschreibe deinen Beitrag bitte mit Signatur und Zeitstempel oder --~~~~.

Hinweise

Archivübersicht Archiv

Wie wird ein Archiv angelegt?
Automatische Archivierung
Auf dieser Seite werden Abschnitte monatlich automatisch archiviert, deren jüngster Beitrag mehr als 90 Tage zurückliegt und die mindestens einen signierten Beitrag enthalten. Um die Diskussionsseite nicht komplett zu leeren, verbleiben mindestens 5 Abschnitte.

Wurde in ECMAScript 6 nicht der Sprachkern um Klassendefinitionen erweitert? (Klassenlosigkeit)[Quelltext bearbeiten]

Wurde in ECMAScript 6 nicht der Sprachkern um Klassendefinitionen erweitert? -> Ist JavaScript seit ES6 "klassenlos?"

Haut rein (nicht signierter Beitrag von 2A02:8071:238A:4100:12C:8CE5:68A7:655 (Diskussion)) 02:13, 1. Jun. 2016 (CEST)

Das ist so nicht richtig, bzw. irreführend. Die Klassendefinition ist nur Syntaktischer Zucker und bringt keine neuen Funktionalitäten. JS ist nach wie vor Prototypen basiert. Ich schlage vor das "(bis ECMAScript 6)"aus der Einleitung zu entfernen und dafür die Klassensyntax unter Sprachelemente vorzustellen und dabei auch auf dieses wichtige Detail zu erwähnen. Hier die entsprechende Seite im MDN. --TorAc (Diskussion) 23:09, 10. Aug. 2017 (CEST)
Sehe ich genauso. Habe mal versucht, die Einleitung klarzustellen. Optimierungen meines Versuchs: gerne!
--JavaScriptKiddie (Diskussion) 08:33, 11. Aug. 2017 (CEST)

Vordefinierte Objekte[Quelltext bearbeiten]

Muss es in der Passage

JavaScript kennt mehrere eingebaute Objekte, die von ECMAScript definiert werden.
  • Das namenlose globale Objekt, das alle Variablen und Objekte enthält.
  • Object als allgemeiner Prototyp, von dem alle Objekte abgeleitet sind.
  • Function als Prototyp für Funktionen.
...

nicht besser heißen:

JavaScript kennt mehrere eingebaute Objekttypen, die von ECMAScript definiert werden
  • Das namenlose globale Objekt, das alle Variablen und Objekte enthält.
  • Object, wobei Object.protoype als allgemeiner Prototyp fungiert, von dem alle Objekte abgeleitet sind.
...

Natürlich kann man noch darauf hinweisen, dass ein „Objekttyp“ eigentlich eine Klasse ist. Wichtig erscheint mir aber, zwischen cl (===cl.prototype.constructor) und cl.prototype zu unterscheiden, wenn cl für eine Konstruktorfunktion wie Object, Array, ... steht. --JavaScriptKiddie (Diskussion) 09:01, 14. Mär. 2018 (CET)

"Skriptsprache"[Quelltext bearbeiten]

"JavaScript (kurz JS) ist eine Skriptsprache"

Darf man das heute im Jahre 2018 echt noch so sagen? O.o --Guckstift (Diskussion) 12:32, 28. Jun. 2018 (CEST)

Klar. Gegenfrage: Wann soll denn das Jahr gewesen sein, ab dem JS keine Skriptsprache mehr war und warum?
Dass viele Skriptsprachen heutzutage nicht mehr Zeile für Zeile interpretiert werden, sondern die Ausführungseinheit um ein..zwei Größenordnungen effizienter arbeitet (wie, ist ja ein Implementierungsdetail), ändert daran ja nichts. Oder? --RokerHRO (Diskussion) 16:27, 28. Jun. 2018 (CEST)

Programmcode falsch?[Quelltext bearbeiten]

Ist der Programmcode in der oberen rechten Ecke nicht falsch?

//Beispiel function Programm() { alert('Hello World'); } window.onload = Programm()

Die letzte Zeile führt zu einer sofortigen Ausführung der Funktion "Programm" und der Rückgabewert wird zugewiesen. --Welkensittich (Diskussion) 13:13, 24. Apr. 2019 (CEST)

Da hast du leider recht; gut aufgepasst.
Die Klammern müssen natürlich weg; es soll das Funktionsobjekt über seinen symbolischen Bezeichner zugewiesen werden.
Ein schleckiger Name wäre bei der Gelegenheit auch angebracht; Programm ist sehr nichtssagend. Eher beimStart oder beimLaden oder wennBereit.
LG --PerfektesChaos 14:27, 24. Apr. 2019 (CEST)
Danke!, bei mir (in Firefox) hatte auch der andere Script funktioniert, das ganze lautet jetzt wie folgt (habe beimLaden nicht genommen, da die Funktion auch woanders eingesetzt werden kann, und das was anderes impliziert):
//Beispiel
function halloWelt() {
alert('Hello World');
}
window.onload = halloWelt
@PerfektesChaos, Welkensittich: Irgendetwas dran auszusetzen? Habitator terrae Pale Blue Dot (cropped).png 15:22, 24. Apr. 2019 (CEST)
Ja das andere Script funktioniert auch, aber die Funktion wird direkt zur Zeit der Interpretation des JS ausgeführt und nicht zum Zeitpunkt der window.onload beschreibt.
Ich habe nichts dran auszusetzen! Vielen Dank --Welkensittich (Diskussion) 15:39, 24. Apr. 2019 (CEST)

JavaScript für Mikrokontroller[Quelltext bearbeiten]

JavaScript wird kaum bei Mikrokontrollern eingesetzt. Vielmals läuft ein Webserver auf dem Mikrokontroller, bei dem serverseitig mit Python programmiert wird und die Daten mittels JSON auf einem Web-Browser mittels JavaScript dargestellt werden. Auf dem Mikrokontroller selber läuft aber kein JavaScript. --Marquis4057 (Diskussion) 13:00, 18. Mai 2019 (CEST)