-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
9 changed files
with
173 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
{ | ||
"label": "الكائنات", | ||
"lableSlug": "objects", | ||
"order": 11 | ||
"order": 12 | ||
} |
29 changes: 29 additions & 0 deletions
29
courses/objects/accessing-object-properties-with-variables.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
--- | ||
title: الوصول إلى خاصية مخزنة كقيمة متغير | ||
snippet: يمكن أن يكون هذا مفيدًا جدًا للتكرار على خصائص الكائن | ||
order: 3 | ||
--- | ||
|
||
الاستخدام الآخر لتدوين الأقواس على الكائنات هو الوصول إلى خاصية مخزنة كقيمة | ||
متغير. يمكن أن يكون هذا مفيدًا جدًا للتكرار على خصائص الكائن. او البحث داخل خصائص | ||
الكائن. | ||
|
||
فيما يلي مثال لاستخدام متغير للوصول إلى خاصية: | ||
|
||
```js | ||
const dogs = { | ||
Fido: "Mutt", | ||
Hunter: "Doberman", | ||
Snoopie: "Beagle", | ||
}; | ||
|
||
const myDog = "Hunter"; | ||
const myBreed = dogs[myDog]; | ||
console.log(myBreed); | ||
``` | ||
|
||
سيتم عرض سلسلة `Doberman` في وحدة التحكم. | ||
|
||
<mark> | ||
لاحظ أننا لا نستخدم علامات الاقتباس حول اسم المتغير عند استخدامه للوصول إلى الخاصية لأننا نستخدم قيمة المتغير وليس الاسم. | ||
</mark> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
--- | ||
title: حذف الخصائص من كائن | ||
snippet: لا يوجد | ||
order: 5 | ||
--- | ||
|
||
يمكننا أيضًا حذف الخصائص من كائنات بهذه الطريقة: | ||
|
||
```js | ||
delete ourDog.bark; | ||
``` | ||
|
||
مثال توضيحي: | ||
|
||
```js | ||
const ourDog = { | ||
"name": "Camper", | ||
"legs": 4, | ||
"tails": 1, | ||
"friends": ["everything!"], | ||
"bark": "bow-wow", | ||
}; | ||
|
||
delete ourDog.bark; | ||
``` | ||
|
||
عندما يتنفذ سطر الحذف هكذا سيكون شكل الكائن الجديد: | ||
|
||
```js | ||
{ | ||
"name": "Camper", | ||
"legs": 4, | ||
"tails": 1, | ||
"friends": ["everything!"] | ||
} | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
--- | ||
title: اختبار خصائص الكائنات | ||
snippet: لا يوجد | ||
order: 6 | ||
--- | ||
|
||
للتحقق من وجود خاصية على كائن معين أم لا، يمكنك استخدام دالة كائنية (Method) | ||
`()hasOwnProperty.`. | ||
|
||
<mark> | ||
ستتعرف في دروس قادما عن الدوال الكائنية او بما يعرف بال <code>(Methods)</code> | ||
</mark> | ||
|
||
```js | ||
const ourDog = { | ||
"name": "Camper", | ||
"legs": 4, | ||
"tails": 1, | ||
"friends": ["everything!"], | ||
"bark": "bow-wow", | ||
}; | ||
|
||
console.log(ourDog.hasOwnProperty("bark")); // true | ||
``` | ||
|
||
تُرجع `true` `ourDog.hasOwnProperty(someProperty)` أو `false` بناءً على ما إذا | ||
كانت الخاصية موجودة على الكائن أم لا. | ||
|
||
مثال اخر: | ||
|
||
```js | ||
function checkForProperty(object, property) { | ||
return object.hasOwnProperty(property); | ||
} | ||
|
||
checkForProperty({ top: "hat", bottom: "pants" }, "top"); // true | ||
checkForProperty({ top: "hat", bottom: "pants" }, "middle"); // false | ||
``` | ||
|
||
يُرجع استدعاء الدالة `checkForProperty` الأول `true`، بينما يُرجع الثاني `false`. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
--- | ||
title: تحديث و إضافة خصائص جديدة للكائن | ||
snippet: لا يوجد | ||
order: 4 | ||
--- | ||
|
||
## تحديث خصائص الكائن | ||
|
||
بعد إنشاء كائن JavaScript، يمكنك تحديث خصائصه في أي وقت تمامًا كما تفعل مع أي | ||
متغير آخر. يمكنك استخدام تدوين النقطة أو القوس للتحديث. | ||
|
||
على سبيل المثال، دعونا ننظر إلى المثال: | ||
|
||
```js | ||
const ourDog = { | ||
"name": "Camper", | ||
"legs": 4, | ||
"tails": 1, | ||
"friends": ["everything!"], | ||
}; | ||
``` | ||
|
||
فلنغير اسم الكلب إلى `"Buddy"` | ||
|
||
```js | ||
// إليك كيفية تحديث خاصية اسم الكائن: | ||
ourDog.name = "Buddy"; | ||
// او عبر الاقواس | ||
ourDog["name"] = "Buddy"; | ||
``` | ||
|
||
الآن عندما نقوم باستدعاء اسم الكلب الخاص بنا، فبدلاً من الحصول على `"Camper"` | ||
سنحصل على اسمه الجديد `"Buddy"` | ||
|
||
## اضافة خصائص جديدة للكائن | ||
|
||
يمكنك إضافة خصائص جديدة إلى كائنات JavaScript الموجودة بنفس الطريقة التي تقوم | ||
بها بتعديلها. | ||
|
||
إليك كيفية إضافة خاصية `bark` إلى `ourDog`: | ||
|
||
```js | ||
ourDog.bark = "bow-wow"; | ||
// او عبر الاقواس | ||
ourDog["bark"] = "bow-wow"; | ||
``` | ||
|
||
الآن عندما نقوم باستدعاء `ourDog.bark`، سنحصل على `bow-wow`. | ||
|
||
مثال توضيحي: | ||
|
||
```js | ||
const ourDog = { | ||
"name": "Camper", | ||
"legs": 4, | ||
"tails": 1, | ||
"friends": ["everything!"], | ||
}; | ||
|
||
ourDog.bark = "bow-wow"; | ||
``` |
4 changes: 2 additions & 2 deletions
4
...eturning-boolean-values-from-functions.md → ...eturning-boolean-values-from-functions.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters