इसे ईएस -6 में टैग की गई टेम्पलेट स्ट्रिंग कहा जाता है और उन्हें Here, मजाकिया के बारे में पढ़ा जा सकता है, मुझे बहुत चैट के तारांकित अनुभाग में लिंक मिला।
लेकिन कोड का रिलीज हिस्सा नीचे है (आप मूल रूप से फ़िल्टर प्रकार बना सकते हैं)।
function tag(strings, ...values) {
assert(strings[0] === 'a');
assert(strings[1] === 'b');
assert(values[0] === 42);
return 'whatever';
}
tag `a${ 42 }b` // "whatever"
असल में यह केवल "1" को console.log फ़ंक्शन के साथ टैग कर रहा है, क्योंकि यह किसी अन्य फ़ंक्शन के साथ करेगा। टैगिंग फ़ंक्शंस टेम्पलेट स्ट्रिंग्स के पार्स किए गए मानों को स्वीकार करते हैं और मूल्यों को अलग-अलग करते हैं जिन पर आगे के कार्यों को किया जा सकता है।
कोलाहल
var _taggedTemplateLiteralLoose = function (strings, raw) { strings.raw = raw; return strings; };
console.log(_taggedTemplateLiteralLoose(["1"], ["1"]));
करने के लिए उपरोक्त कोड transpiles आप ऊपर के उदाहरण में यह देख सकते हैं, कोलाहल से transpiled किए जाने के बाद, टैगिंग समारोह (console.log) निम्न में से वापसी मान भेजी जा रही है es6-> 5 पारदर्शी कोड।
_taggedTemplateLiteralLoose (["1"], ["1"]);
इस फ़ंक्शन का वापसी मूल्य console.log पर भेज दिया गया है जो तब सरणी मुद्रित करेगा।
संबंधित: [जावास्क्रिप्ट Es6 टैग किए गए टेम्पलेट्स - कच्चे कब उपयोग किया जाता है? जब पकाया जाता है?] (Http://stackoverflow.com/q/27782577/218196), [ES6 टैग किए गए टेम्पलेट फ़ंक्शंस उनके तर्क आदेश की व्याख्या कैसे करते हैं?] (Http://stackoverflow.com/q/24816777/218196) –