Files
freeCodeCamp/curriculum/challenges/arabic/02-javascript-algorithms-and-data-structures/basic-javascript/accessing-object-properties-with-variables.md
2022-10-20 09:13:17 -07:00

108 lines
2.6 KiB
Markdown

---
id: 56533eb9ac21ba0edf2244c9
title: الوصول إلى خصائص الكائن باستخدام المتغيرات (Accessing Object Properties with Variables)
challengeType: 1
videoUrl: 'https://scrimba.com/c/cnQyKur'
forumTopicId: 16165
dashedName: accessing-object-properties-with-variables
---
# --description--
وثمة استخدام آخر لترميز آلأقواس للوصول إلى الخصائص المخزنة كقيمة للمتغير. يمكن أن يكون هذا مفيداً جداً خلال تكرار خصائص الكائن أو عند الوصول إلى جدول البحث.
فيما يلي, مثال على استخدام متغير للوصول إلى خاصية ما:
```js
const dogs = {
Fido: "Mutt",
Hunter: "Doberman",
Snoopie: "Beagle"
};
const myDog = "Hunter";
const myBreed = dogs[myDog];
console.log(myBreed);
```
سوف يتم عرض `Doberman` في وحدة التحكم (console).
لاحظ أننا *لا* نستخدم علامات التنصيص حول اسم المتغير عند استخدامه للوصول إلى الخاصية لأننا نستخدم *قيمة* المتغير، ليس *الاسم*.
# --instructions--
عيّن متغير `playerNumber` إلى `16`. ثم استخدم المتغير للبحث عن اسم اللاعب وتعيينه إلى `player`.
# --hints--
`playerNumber` يجب أن يكون رقما
```js
assert(typeof playerNumber === 'number');
```
المتغير `player` يجب أن يكون مقطع نصي (string)
```js
assert(typeof player === 'string');
```
يجب أن تكون قيمة `player` مقطع نصي `Montana`
```js
assert(player === 'Montana');
```
يجب عليك استخدام ترميز ألأقواس للوصول إلى `testObj`
```js
assert(/testObj\s*?\[.*?\]/.test(code));
```
لا يجب عليك تعيين قيمة `Montana` للمتغير `player` مباشرة.
```js
assert(!code.match(/player\s*=\s*"|\'\s*Montana\s*"|\'\s*;/gi));
```
يجب أن تستخدم المتغير `playerNumber` في رمز القوس
```js
assert(/testObj\s*?\[\s*playerNumber\s*\]/.test(code));
```
# --seed--
## --after-user-code--
```js
if(typeof player !== "undefined"){(function(v){return v;})(player);}
```
## --seed-contents--
```js
// Setup
const testObj = {
12: "Namath",
16: "Montana",
19: "Unitas"
};
// Only change code below this line
const playerNumber = 42; // Change this line
const player = testObj; // Change this line
```
# --solutions--
```js
const testObj = {
12: "Namath",
16: "Montana",
19: "Unitas"
};
const playerNumber = 16;
const player = testObj[playerNumber];
```