Karl Heinz: Javascript - verschiedene Arten von Hochkommas - Unterschied?

Hallo,

in dieser Anleitung habe ich dieses Code-Fragment als Beispiel gefunden:

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-XXXXX-YY', 'auto'); // Google Analytics-Web-Property-ID einfügen, z. B. "UA-12345-1"
  ga('set','dimension1','12345, 678910, 98765'); // Erforderlich, Wert der Produkt-ID, z. B. "12345" oder "67890"
  ga('set','dimension2',’searchresults’); // Optional, Wert des Seitentyps, z. B. "home", "cart" oder "purchase"
  ga('set','dimension3','99.95'); // Optional, Gesamtwert, z. B. "99.95", "5.00" oder "1500.00"
  ga('send', 'pageview');

</script>

Bei den Werten für Dimension 1 und Dimension 3 werden andere Hochkommas verwendet als bei Dimension 2.

  • Dimension 1 und Dimension 3 verwenden '
  • Dimension 2 verwendet ’

Was ist denn der Unterschied dieser beiden Arten von Hochkommas bzw. wann sollte man welche Art verwenden?

akzeptierte Antworten

  1. Hallo Karl,

    Bei den Werten für Dimension 1 und Dimension 3 werden andere Hochkommas verwendet als bei Dimension 2.

    • Dimension 1 und Dimension 3 verwenden '
    • Dimension 2 verwendet ’

    Was ist denn der Unterschied dieser beiden Arten von Hochkommas bzw. wann sollte man welche Art verwenden?

    Der Unterschied ist, dass falsch ist und ' richtig. Du kannst bei JS zwischen " und ' wählen. ist nicht dabei.

    LG,
    CK

    1. Der Unterschied ist, dass falsch ist und ' richtig. Du kannst bei JS zwischen " und ' wählen. ist nicht dabei.

      Das heißt die Google Anleitung ist falsch und ich müsste bei Dimension 2 durch ' ersetzen?

      Wann verwendet man denn " und wann verwendet man '?

      1. Hallo Karl,

        Der Unterschied ist, dass falsch ist und ' richtig. Du kannst bei JS zwischen " und ' wählen. ist nicht dabei.

        Das heißt die Google Anleitung ist falsch und ich müsste bei Dimension 2 durch ' ersetzen?

        Ja.

        Wann verwendet man denn " und wann verwendet man '?

        Du verwendest das, was den Code am lesbarsten macht. Du kannst z.B. "\"" schreiben - aber du kannst auch einfach '"' schreiben (um mal ein Trivial-Beispiel zu erwähnen). Schau dir die Escaping-Regeln an.

        LG,
        CK

      2. @@Karl Heinz

        Wann verwendet man denn " und wann verwendet man '?

        Man verwendet " als schließendes Zeichen, wenn man " als öffnendes verwendet hat, und ' als schließendes, wenn man ' als öffnendes verwendet hat. ;-)

        Welches man als öffnendes verwendet, ist egal, solange Anführungszeichen nicht verschachtelt werden. Was innerhalb einer Sprache aber kaum vorkommen sollte, sonst macht man vermutlich was falsch, bspw. " bzw. ' in natürlichsprachigem Text zu verwenden.[1]

        Es bietet sich aber an, innerhalb einer Sprache konsequent dieselben Stringbegrenzungszeichen zu verwenden.

        Und wenn man eine Sprache in eine andere schachtelt, dann jeweils verschiedene, damit man nicht escapen muss. Bspw. JavaScript in HTML: <button onclick="alert('Button clicked.');">Click me!</button>. Schlechtes Beispiel allerdings: Man sollte JavaScript nicht in den HTML-Code tun.

        LLAP 🖖

        --
        “I love to go to JS conferences to speak about how to avoid using JavaScript. Please learn CSS & HTML to reduce your JS code bloat.” —Estelle Weyl

        1. Deutsche Anführungszeichen sind „“, englische “”, Apostroph ist ’. ↩︎

        1. @@Gunnar Bittersmann

          … sonst macht man vermutlich was falsch, bspw. " bzw. ' in natürlichsprachigem Text zu verwenden.

          Deutsche Anführungszeichen sind „“, englische “”, Apostroph ist ’.

          Go home, bing, you’re drunk.

          LLAP 🖖

          --
          “I love to go to JS conferences to speak about how to avoid using JavaScript. Please learn CSS & HTML to reduce your JS code bloat.” —Estelle Weyl
    2. Hallo,

      • Dimension 1 und Dimension 3 verwenden '
      • Dimension 2 verwendet ’

      Was ist denn der Unterschied dieser beiden Arten von Hochkommas bzw. wann sollte man welche Art verwenden?

      Der Unterschied ist, dass falsch ist und ' richtig.

      das ahnt man ja auch schon, wenn man die Hervorhebung im Syntax-Hilighting sieht.

      Du kannst bei JS zwischen " und ' wählen.

      Genau. Und anders als in PHP oder in C gibt es in Javascript keinen Bedeutungsunterschied zwischen den beiden. Man wählt also am besten die Form, die im jeweiligen Kontext-Stack möglichst ohne Escaping auskommt.

      So long,
       Martin

      --
      Es gibt eine Theorie, die besagt, dass das Universum augenblicklich durch etwas noch Komplizierteres und Verrücktes ersetzt wird, sobald jemand herausfindet, wie es wirklich funktioniert. Es gibt eine weitere Theorie, derzufolge das bereits geschehen ist.
      - (frei übersetzt nach Douglas Adams)
  2. Nur zur Info, ein „rückwärts geneigtes Hochkomma“ oder Backtick gibt es auch in JavaScript.

    1. Hallo Kay,

      Nur zur Info, ein „rückwärts geneigtes Hochkomma“ oder Backtick gibt es auch in JavaScript.

      Nur um das klarzustellen: hier wurde der Apostroph (U+2019) verwendet.

      LG,
      CK

      1. Hallo Christian,

        Nur um das klarzustellen: hier wurde der Apostroph (U+2019) verwendet.

        richtig, und ich habe ergänzend zur Überschrift auf Gravis (U+0060) hingewiesen.

        1. Hallo Christian,

          Nur um das klarzustellen: hier wurde der Apostroph (U+2019) verwendet.

          richtig, und ich habe ergänzend zur Überschrift auf Gravis (U+0060) hingewiesen.

          Ich schaffe es nicht "U+0060" (das rückwärts geneigte Hochkomma) im Beitrag darzustellen. Das Wort zwischen den rückwärts geneigten Hochkommas wird blau mit Rahmen formatiert dargestellt. Siehe dritte Zeile in nachfolgenden Liste:

          Das heißt:

          • ga('set','dimension2',searchresults); wäre falsch?
          • ga('set','dimension2','searchresults'); wäre korrekt? (U+2019)
          • ga('set','dimension2',searchresults); wäre ebenfalls korrekt? (U+0060)

          Stimmt das so?

          1. Tach!

            Ich schaffe es nicht "U+0060" (das rückwärts geneigte Hochkomma) im Beitrag darzustellen. Das Wort zwischen den rückwärts geneigten Hochkommas wird blau mit Rahmen formatiert dargestellt. Siehe dritte Zeile in nachfolgenden Liste:

            `maskieren` heißt das Zauberwort.

            • ga('set','dimension2','searchresults'); wäre korrekt? (U+2019)
            • ga('set','dimension2',`searchresults`); wäre ebenfalls korrekt? (U+0060)

            Die Backticks haben eine andere Bedeutung als "und '. Der Text darin wird als Template interpretiert und Angaben innerhalb ${...} werden ausgewertet und deren Ergebnis in das Resultat eingefügt. Backticks sind also kein Äquivalent. Sie wären also korrekt, aber nicht sinnvoll, wenn man deren Funktionalität nicht haben möchte. Zudem kann wohl der IE dieses relativ neue Javascript-Feature nicht (Edge kann es aber).

            dedlfix.

            1. `maskieren` heißt das Zauberwort.

              `DANKE`

            2. @@dedlfix

              `maskieren` heißt das Zauberwort.

              Und ich dachte: Kontextwechsel.

              LLAP 🖖

              PS: Oder Kontechstwexel?

              --
              “I love to go to JS conferences to speak about how to avoid using JavaScript. Please learn CSS & HTML to reduce your JS code bloat.” —Estelle Weyl
              1. Tach!

                `maskieren` heißt das Zauberwort.

                Und ich dachte: Kontextwechsel.

                Generalisiert ja, aber das Mittel hier ist im Speziellen das Maskieren.

                dedlfix.

                1. @@dedlfix

                  `maskieren` heißt das Zauberwort.

                  Und ich dachte: Kontextwechsel.

                  Generalisiert ja, aber das Mittel hier ist im Speziellen das Maskieren.

                  Du hast den ' ' übersehen?

                  Da war er wieder, der unsichtbare Smiley.

                  LLAP 🖖

                  --
                  “I love to go to JS conferences to speak about how to avoid using JavaScript. Please learn CSS & HTML to reduce your JS code bloat.” —Estelle Weyl
                  1. Tach!

                    Du hast den ' ' übersehen?

                    Da war er wieder, der unsichtbare Smiley.

                    Der war zu sehr maskiert.

                    dedlfix.

                    1. @@dedlfix

                      Du hast den ' ' übersehen?

                      Da war er wieder, der unsichtbare Smiley.

                      Der war zu sehr maskiert.

                      :-D

                      Ein unsichtbarer Smiley ist übrigens meinen Postings inherent. Wird nur manchmal durch einen sichtbaren ergänzt, um euch zu verwirren.

                      LLAP 🖖

                      --
                      “I love to go to JS conferences to speak about how to avoid using JavaScript. Please learn CSS & HTML to reduce your JS code bloat.” —Estelle Weyl