66 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
title: Object Instantiation
 | 
						|
localeTitle: Instantization كائن
 | 
						|
---
 | 
						|
## Instantization كائن
 | 
						|
 | 
						|
في Javascript ومعظم اللغات الأخرى ، يحتوي الكائن على سلسلة من الخصائص ، والتي تعد زوجًا رئيسيًا ذا قيمة. هناك العديد من الخيارات المتاحة لك عندما تحتاج إلى بناء كائن.
 | 
						|
 | 
						|
### تهيئة متغير كائن
 | 
						|
 | 
						|
يمكنك إنشاء كائن بخصائص محددة مسبقًا مثل:
 | 
						|
 | 
						|
 `let myObject = { 
 | 
						|
  name: "Dave", 
 | 
						|
  age: 33 
 | 
						|
 } 
 | 
						|
` 
 | 
						|
 | 
						|
### خلق كائن فارغ
 | 
						|
 | 
						|
يؤدي هذا إلى إنشاء كائن فارغ داخل متغير myObject الخاص بنا:
 | 
						|
 | 
						|
 `let myObject = new Object(); 
 | 
						|
` 
 | 
						|
 | 
						|
عندما ترغب في إضافة خصائص إلى الكائن الخاص بك ، يمكنك ببساطة استخدام إما تدوين نقطي أو تدوين قوس مع اسم الخاصية الذي تختاره:
 | 
						|
 | 
						|
 `myObject.name = "Johnny Mnemonic" 
 | 
						|
 myObject["age"] = 55 
 | 
						|
` 
 | 
						|
 | 
						|
### باستخدام وظيفة منشئ
 | 
						|
 | 
						|
يمكنك تعريف دالة منشئ يمكنك استخدامها لإنشاء الكائنات الخاصة بك:
 | 
						|
 | 
						|
 `function Kitten(name, cute, color) { 
 | 
						|
  this.name = name, 
 | 
						|
  this.cute = cute, 
 | 
						|
  this.color = color 
 | 
						|
 } 
 | 
						|
` 
 | 
						|
 | 
						|
يمكنك تعريف متغير يحتوي على إنشاء مثيل لهذا الكائن عن طريق استدعاء دالة منشئ:
 | 
						|
 | 
						|
 `let myKitten = new Kitten("Nibbles", true, "white") 
 | 
						|
` 
 | 
						|
 | 
						|
### Object.create ()
 | 
						|
 | 
						|
يتيح لك الأسلوب Object.create () (المحدد أولاً في ECMAScript 5.1) إنشاء كائنات. يسمح لك باختيار كائن النموذج الأصلي للكائن الجديد دون الحاجة إلى تعريف دالة منشئ مسبقًا.
 | 
						|
 | 
						|
 `// Our pre-defined object 
 | 
						|
 let kitten = { 
 | 
						|
  name: "Fluff", 
 | 
						|
  cute: true, 
 | 
						|
  color: "gray" 
 | 
						|
 } 
 | 
						|
 // Create a new object using Object.create(). kitten is used as the prototype 
 | 
						|
 let newKitten = Object.create(kitten) 
 | 
						|
 
 | 
						|
 console.log(newKitten.name) // Will output "Fluff" 
 | 
						|
` 
 | 
						|
 | 
						|
#### معلومات اكثر
 | 
						|
 | 
						|
[مقال MDN حول العمل مع الكائنات](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects) |