freeCodeCamp/guide/arabic/javascript/es6/template-literals/index.md

2.7 KiB

title localeTitle
Template Literals قالب حرفية

قالب حرفية

المقدمة:

عندما نريد استخدام المتغير لإنشاء سلسلة ، يصبح مؤلماً للغاية حيث يتعين علينا استخدام إشارة + لسَلسَط وتتبع عروض الأسعار.

الآن مع ES6 ، يمكننا إنشاء سلسلة باستخدام backticks واستخدام العناصر النائبة المشار إليها بعلامة الدولار والأقواس المجعدة ، مثل $ {expression}.

``const name='John'; const city='London';

Older Style: const sentence ='My name is '+ name +'. I live in '+city. ES6 way: const sentence = My name is ${name}. I live in ${city}; Here {name} and {city}are going to be interpolated by the variable name and city respectively. ``

سلاسل MultiLine:

نمط أقدم:

عندما أردنا أن نمتد إلى سلسلة متعددة ، كان علينا استخدام الخطوط المائلة العكسية.

const multipleLineString= "We have \ multiple lines \ here";

الآن عندما نريد إنشاء سلسلة mutiline ، يمكننا الاستفادة من سلاسل القوالب. يمكننا أن تحيط سلسلة لدينا مع backticks. هذا النهج مفيد للغاية عندما نريد إنشاء بعض ترميز html الديناميكي.

``const htmlMarkup = `

<html> <head></head> Hello World </html>`; ``

تداخل سلاسل قوالب:

يمكننا تداخلهم داخل بعضهم البعض.

``const cities =[ {name:'Delhi', year: 2010}, {name:'Mumbai', year: 2015}, {name:'Kolkata', year: 2017}];

const markup = `

    ${cities.map(city=>`
  • I lived in ${city.name} in the year ${city.year}
  • `).join('')}
`; ``

هنا يقوم عامل التشغيل بعد وظيفة الخريطة بإزالة الفواصل الإضافية التي تتم إضافتها بعد كل li.

إذا البيانات والوظائف

يمكننا أيضًا استخدام عبارات If داخل سلاسل القالب.

const data = {name: 'John', city: 'London', birthyear: 1900}; const markup = `<div>${data.name} lives in ${data.city}. ${data.birthyear ? `<div>He was born in the year ${data.birthyear}</div>`:''}</div>`;

في المثال أعلاه ، إذا تم تعريف الميلاد ، فحينئذٍ يتم إنشاء محتويات "ولد في السنة" ، وإلا لن يكون هناك قسم تم إنشاؤه.

يمكننا أيضا استدعاء وظائف داخل سلاسل القالب.