Forum: PC-Programmierung HTML-Tags ohne quotes in Javascript


von Ian (Gast)


Lesenswert?

Hallo Webentwickler,
ich bin gerade auf ein Codefragment gestoßen, dessen Syntax ich nicht 
verstehe. Ähnliche Beispiele finden sich hier: 
https://facebook.github.io/react/docs/rendering-elements.html

Erstens:
const element = <h1>Hello, world</h1>;

Zweitens:
function tick() {
  const element = (
    <div>
      <h1>Hello, world!</h1>
      <h2>It is {new Date().toLocaleTimeString()}.</h2>
    </div>
  );
  //...
}

Warum ist etwas wie "const element = <h1>Hello, world</h1>;" korrekte 
Javascript-Syntax? (Meiner Meinung nach wäre nur "const element = 
'<h1>Hello, world</h1>';" korrekt, also mit quotes ums HTML herum.) Ist 
dies eine modernere JS-Variante als mir bekannt ist, die HTML-Tags als 
Sprachelemente enthält? Oder wird irgendein fieses Operatoroverloading 
verwendet, das "<" und ">" neu definiert, falls dies in JS möglich sein 
sollte?
Sachdienliche Hinweise zur Bedeutung dieser quote-freien Schreibweise, 
möglichst mit Link zur offiziellen JS-Dokumentation werden gerne 
entgegengenommen.

Danke
Ian

von Georg A. (georga)


Lesenswert?

Ian schrieb:
> Sachdienliche Hinweise zur Bedeutung dieser quote-freien Schreibweise,
> möglichst mit Link zur offiziellen JS-Dokumentation werden gerne
> entgegengenommen.

Es ist kein JS ;)

https://facebook.github.io/react/docs/introducing-jsx.html

JS ist heute sowas wie Assembler. Keiner programmiert mehr direkt damit, 
stattdessen gibt es drölfzig Stacks obendrüber, die nach gefühlt 3 
Monaten schon wieder obsolet sind.

https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f

von Ian (Gast)


Lesenswert?

Danke, das erklärt alles. Auch dein 2. Link ist eine perfekte 
Beschreibung, wie ich mich angesichts der vielen JS-Entwicklungen fühle. 
Bisher dachte ich, ich wäre der einzige, dem es so geht.

von Cyblord -. (Gast)


Lesenswert?

Georg A. schrieb:
> https://hackernoon.com/how-it-feels-to-learn-javas...

Schöner Rant-Artikel :) Und am Ende des Tages stellt man fest, dass man 
90% davon nicht braucht für simple Aufgaben. 
Vollblut-Frontend-Entwickler haben definitiv einen Hau weg, aber davon 
muss man sich nicht anstecken lassen. Mit einem soliden 
Softwareentwicklungshintergrund kommt man auch da zu akzeptablen und vor 
allem wartbaren Lösungen.
(Der Autor dieses Posts nutzt nach wie vor jQuery und CoffeeScript, auch 
wenn der jQuery-Anteil abnimmt weil mehr und mehr von JS nativ 
unterstützt wird)

Aber man sollte auch ein wenig Nachsicht haben:

https://medium.freecodecamp.com/javascript-fatigue-fatigue-66ffb619f6ce#.ng51n8lcy

Webentwicklung heutzutage mit den verschiedenen Endgeräten kann ätzend 
sein und die Endkunden sind oft #+#+'*@#*'+# als eine ungetoastete 
Scheibe Weizentoastbrot.
Aber mit EINEM guten CSS-Framework (Bootstrap, Foundation, YAML, ...) 
und ein bisschen plain Javascript kriegt man ebenso akzeptable 
Ergebnisse hin.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.