2016-03-07 28 views
50

Nie widziałem nic tutaj ani na MDN. Jestem pewien, że po prostu coś mi brakuje. Gdzieś musi być jakaś dokumentacja?

Funkcjonalnie wygląda na to, że pozwala zagnieździć zmienną w ciągu znaków bez łączenia za pomocą operatora +. Szukam dokumentacji dotyczącej tej funkcji.

Przykład:

var string = 'this is a string'; 

console.log('Insert a string here: ${string}'); 
+0

Czy możesz podać jakiś kontekst co pytasz o? To pytanie jest niejasne w formie pisemnej. –

+0

[Literały szablonu ECMAScript 2015] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) –

+0

To nie jest złe pytanie. Jest to nowa funkcja i na pewno nie mogę znaleźć duplikatu na SO, chociaż przykład tego, co było widziane, byłby dobry. –

Odpowiedz

66

Mówisz o template literals.

Pozwalają one na stosowanie zarówno ciągów wielowierszowych, jak i interpolacji ciągów.

wielowierszowe ciągi:

console.log(`foo 
bar`); 
// foo 
// bar 

interpolacji String:

var foo = 'bar'; 
console.log(`Let's meet at the ${foo}`); 
// Let's meet at the bar 
+21

Jedną rzeczą, która mnie dezorientowała przez długi czas jest to, że literały szablonu używa backtick, który jest na po lewej stronie "1" na klawiaturze, zamiast pojedynczego cudzysłowu ("). – Sydney

+4

Cool: Możesz nawet "wstrzyknąć" kod: 'console.log (\' Twoja tablica: \ n $ {arr.join ('\ n')} \ ')' – T4NK3R