451 Stimmen

Verwendung des Backtick-Zeichens (`) in JavaScript

In JavaScript funktioniert ein Backtick† anscheinend genauso wie ein einfaches Anführungszeichen. Zum Beispiel kann ich ein Backtick verwenden, um einen String wie diesen zu definieren:

var s = `abc`;

Gibt es eine Möglichkeit, in der sich das Verhalten des Backticks tatsächlich von dem eines einfachen Anführungszeichens unterscheidet?


† Beachten Sie, dass unter Programmierern "Backtick" eine Bezeichnung für das ist, was allgemeiner als Gravis bezeichnet wird. Programmierer verwenden manchmal auch die alternativen Bezeichnungen "Backquote" und "Backgrave". Außerdem sind auf Stack Overflow und anderswo andere gängige Schreibweisen für "Backtick" "back-tick" und "back tick".

0voto

Sie können auch ein Template von Vorlagen erstellen und auf private Variablen zugreifen.

var a = {e: 10, gy: 'sfdsad'}; //global object

console.log(`e ist ${a.e} und gy ist ${a.gy}`); 
//e ist 10 und gy ist sfdsad

var b = "e ist ${a.e} und gy ist ${a.gy}" // Vorlagenzeichenfolge
console.log( `${b}` );
//e ist ${a.e} und gy ist ${a.gy}

console.log( eval(`\`${b}\``) ); // Vorlagenzeichenfolge in Vorlage konvertieren
//e ist 10 und gy ist sfdsad

backtick( b );   // Verwendung der Variablen der Funktion
//e ist 20 und gy ist fghj

function backtick( temp ) {
  var a= {e: 20, gy: 'fghj'}; // lokales Objekt
  console.log( eval(`\`${temp}\``) );
}

0voto

Laloprince Punkte 59
  1. Erstellen von Template-Literalen: Template-Literale ermöglichen eingebettete Ausdrücke und mehrzeilige Strings.

    const name = 'Alice'; const greeting = Hallo, ${name}!; console.log(greeting); // Ausgabe: Hallo, Alice!

  2. Eingebettete Ausdrücke: Sie können Ausdrücke innerhalb von ${} in einem Template-Literal einbetten.

    const a = 10; const b = 5; const sum = Die Summe von ${a} und ${b} beträgt ${a + b}.; console.log(sum); // Ausgabe: Die Summe von 10 und 5 beträgt 15.

  3. Mehrzeilige Strings: Template-Literale können über mehrere Zeilen gehen, ohne Sonderzeichen wie \n verwenden zu müssen.

    const multiline = Dies ist ein mehrzeiliger String. ; console.log(multiline);

  4. Markierte Vorlagen: Template-Literale können mit einer Funktion markiert werden, die den Vorlagenstring vorverarbeiten kann.

    function myTag(strings, ...values) { console.log(strings); // Array of string literals console.log(values); // Array of interpolated values }

    const value1 = 10; const value2 = 20; myTagDie Werte sind ${value1} und ${value2}.;

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X