71 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			71 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | ||
|  | title: Template Literals | ||
|  | localeTitle: قالب حرفية | ||
|  | ---
## قالب حرفية
 | ||
|  | 
 | ||
|  | ## المقدمة:
 | ||
|  | 
 | ||
|  | عندما نريد استخدام المتغير لإنشاء سلسلة ، يصبح مؤلماً للغاية حيث يتعين علينا استخدام إشارة + لسَلسَط وتتبع عروض الأسعار. | ||
|  | 
 | ||
|  | الآن مع 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>  | ||
|  |  <title>Template string</title>  | ||
|  |  <body>Hello World</body>  | ||
|  |  </html>`;  | ||
|  | ``  | ||
|  | 
 | ||
|  | ## تداخل سلاسل قوالب:
 | ||
|  | 
 | ||
|  | يمكننا تداخلهم داخل بعضهم البعض. | ||
|  | 
 | ||
|  |  ``const cities =[  | ||
|  |  {name:'Delhi', year: 2010},  | ||
|  |  {name:'Mumbai', year: 2015},  | ||
|  |  {name:'Kolkata', year: 2017}];  | ||
|  |   | ||
|  |   | ||
|  |  const markup = `  | ||
|  |  <ul>  | ||
|  |  ${cities.map(city=>`<li>I lived in ${city.name} in the year ${city.year}</li>`).join('')}  | ||
|  |  </ul>`;  | ||
|  | ``  | ||
|  | 
 | ||
|  | هنا يقوم عامل التشغيل بعد وظيفة الخريطة بإزالة الفواصل الإضافية التي تتم إضافتها بعد كل 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>`;  | ||
|  | ``  | ||
|  | 
 | ||
|  | في المثال أعلاه ، إذا تم تعريف الميلاد ، فحينئذٍ يتم إنشاء محتويات "ولد في السنة" ، وإلا لن يكون هناك قسم تم إنشاؤه. | ||
|  | 
 | ||
|  | يمكننا أيضا استدعاء وظائف داخل سلاسل القالب. |