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) |