Gunnar Bittersmann: Re: JavaScript-Syntax

@@alle:

nuqneH

Auf meine Frage weiß Crockford die Antwort: “These things hanging outside are looking like dog balls.”

Also die Klammern um alles: (function () {/* … */} ())

Vermutlich ist die ganze (Lehr-)Stunde ansehenswert.

Qapla'

--
Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
(Mark Twain)
  1. [latex]Mae  govannen![/latex]

    Auf meine Frage weiß Crockford die Antwort: “These things hanging outside are looking like dog balls.”

    Also die Klammern um alles: (function () {/* … */} ())

    Diese Sytax ist mir lästig. Wenn ich einen derart umschlossenen Bereich temporär deaktivieren will: Problem.

    Bei der herkömmlichen Syntax: Einfach. (function () {})() => (function () {})//()

    Stur lächeln und winken, Männer!
    Kai

    --
    It all began when I went on a tour, hoping to find some furniture
     Followed a sign saying "Beautiful Chest", led to a lady who showed me her best)
    SelfHTML-Forum-Stylesheet
  2. Also die Klammern um alles: (function () {/* … */} ())

    Finde ich unverständlicher als (function () {})(). Der Sinn der Sache ist

    1. am Anfang einer Zeile die Unterscheidung zur Function Declaration
    2. Eventuelle Probleme bei der Minification umgehen bzw. aufzeigen.

    Für ersten Zwecke wäre alles denkbar, was ein Expression Statement einleitet, es ginge auch

    !function(){
      alert(1);
    }()

    Für zweiten Zweck ist (fe)() deutlich besser als (fe()) (wobei fe = Function Expression), denn () kann nach der Komprimierung als Call-Expression geparst werden, wenn der Code vorher nicht korrekt auf ; endet. Das ist bei ()() auch möglich, nur gibt es dann wahrscheinlicher eine Exception, wenn der Rückgabewert keine Funktion ist.

    Mathias