--- id: 56bbb991ad1ed5201cd392d0 title: Build JavaScript Objects challengeType: 1 videoUrl: '' localeTitle: بناء كائنات جافا سكريبت --- ## Description
ربما سمعت المصطلح object قبل. تشبه الكائنات arrays ، إلا أنه بدلاً من استخدام الفهارس للوصول إلى بياناتها وتعديلها ، يمكنك الوصول إلى البيانات الموجودة في الكائنات من خلال ما يسمى properties . تُعد الكائنات مفيدة لتخزين البيانات بطريقة منظمة ، ويمكن أن تمثل كائنات العالم الحقيقي ، مثل القطة. وإليك عينة كائن القط:
var cat = {
"الاسم": "الشعيرات" ،
"الساقين": 4 ،
"ذيول": 1 ،
"الأعداء": ["Water"، "Dogs"]
في هذا المثال ، يتم تخزين جميع الخصائص كسلاسل ، مثل - "name" ، "legs" ، و "tails" . ومع ذلك ، يمكنك أيضًا استخدام الأرقام كخصائص. يمكنك حتى حذف علامات الاقتباس لخصائص السلسلة المفردة الكلمة ، كما يلي:
var anotherObject = {
جعل: "فورد" ،
5: "خمسة" ،
"نموذج": "التركيز"
ومع ذلك ، إذا كان الكائن الخاص بك يحتوي على أية خصائص غير سلسلة ، فسوف يقوم جافا سكريبت بتلبيسها تلقائيًا كسلاسل.
## Instructions
جعل كائن يمثل كلب يسمى myDog الذي يحتوي على خصائص "name" (سلسلة) ، "legs" ، "tails" و "friends" . يمكنك تعيين خصائص الكائن هذه إلى أي قيم تريدها ، حيث أن "name" الطويل عبارة عن سلسلة ، و "legs" و "tails" هي أرقام ، و "friends" هو مصفوفة.
## Tests
```yml tests: - text: myDog يجب أن يحتوي على name الخاصية ويجب أن يكون string . testString: 'assert((function(z){if(z.hasOwnProperty("name") && z.name !== undefined && typeof z.name === "string"){return true;}else{return false;}})(myDog), "myDog should contain the property name and it should be a string.");' - text: myDog يجب أن يحتوي على legs العقار ويجب أن يكون number . testString: 'assert((function(z){if(z.hasOwnProperty("legs") && z.legs !== undefined && typeof z.legs === "number"){return true;}else{return false;}})(myDog), "myDog should contain the property legs and it should be a number.");' - text: myDog يجب أن يحتوي على tails الخاصية ويجب أن يكون number . testString: 'assert((function(z){if(z.hasOwnProperty("tails") && z.tails !== undefined && typeof z.tails === "number"){return true;}else{return false;}})(myDog), "myDog should contain the property tails and it should be a number.");' - text: myDog يجب أن يحتوي على friends الملكية ويجب أن يكون array . testString: 'assert((function(z){if(z.hasOwnProperty("friends") && z.friends !== undefined && Array.isArray(z.friends)){return true;}else{return false;}})(myDog), "myDog should contain the property friends and it should be an array.");' - text: يجب أن يحتوي myDog على جميع الخصائص المحددة فقط. testString: 'assert((function(z){return Object.keys(z).length === 4;})(myDog), "myDog should only contain all the given properties.");' ```
## Challenge Seed
```js // Example var ourDog = { "name": "Camper", "legs": 4, "tails": 1, "friends": ["everything!"] }; // Only change code below this line. var myDog = { }; ```
### After Test
```js console.info('after the test'); ```
## Solution
```js // solution required ```