Es ist Tagged Vorlage in ES-6 genannt man mehr über sie zu lesen Hier , lustig fand ich den Link in der Sterne - Bereich des sehr unterhalten.
Der relevante Teil des Codes ist jedoch unten aufgeführt (Sie können grundsätzlich eine gefilterte Sortierung erstellen).
function tag(strings, ...values) {
assert(strings[0] === 'a');
assert(strings[1] === 'b');
assert(values[0] === 42);
return 'whatever';
}
tag `a${ 42 }b` // "whatever"
Grundsätzlich wird lediglich die "1" mit der Funktion console.log markiert, wie dies bei jeder anderen Funktion der Fall wäre. Die Tagging-Funktionen akzeptieren analysierte Werte von Vorlagenzeichenfolgen und die Werte separat, für die weitere Aufgaben ausgeführt werden können.
Babel transpiliert den obigen Code in
var _taggedTemplateLiteralLoose = function (strings, raw) { strings.raw = raw; return strings; };
console.log(_taggedTemplateLiteralLoose(["1"], ["1"]));
Wie Sie im obigen Beispiel sehen können, wird der Tagging-Funktion (console.log) nach dem Transpilieren durch babel der Rückgabewert des folgenden transpilierten es6-> 5-Codes übergeben.
_taggedTemplateLiteralLoose( ["1"], ["1"] );
Der Rückgabewert dieser Funktion wird an console.log übergeben, die dann das Array druckt.