4.4 KiB
4.4 KiB
id | title | challengeType | videoUrl | forumTopicId | localeTitle |
---|---|---|---|---|---|
56bbb991ad1ed5201cd392d0 | Build JavaScript Objects | 1 | https://scrimba.com/c/cWGkbtd | 16769 | Создание объектов JavaScript |
Description
object
раньше. Объекты похожи на arrays
, за исключением того, что вместо использования индексов для доступа и изменения их данных вы получаете доступ к данным в объектах через так называемые properties
. Объекты полезны для хранения данных структурированным способом и могут представлять объекты реального мира, такие как кошка. Вот пример объекта cat: var cat = {В этом примере все свойства сохраняются как строки, такие как
«имя»: «Усы»,
«ноги»: 4,
«хвосты»: 1,
«враги»: [«Вода», «Собаки»]
};
"name"
, "legs"
и "tails"
. Однако вы также можете использовать числа как свойства. Вы даже можете опустить кавычки для свойств строки с одним словом, а именно: var anotherObject = {Однако, если ваш объект имеет какие-либо свойства, отличные от строки, JavaScript автоматически приведет их в виде строк.
сделать: «Форд»,
5: «пять»,
«модель»: «фокус»
};
Instructions
myDog
которая содержит свойства "name"
(строка), "legs"
, "tails"
и "friends"
. Вы можете установить эти свойства объекта для любых значений, которые вы хотите, поскольку "name"
- это строка, "legs"
и "tails"
- это числа, а "friends"
- это массив.
Tests
tests:
- text: <code>myDog</code> should contain the property <code>name</code> and it should be a <code>string</code>.
testString: assert((function(z){if(z.hasOwnProperty("name") && z.name !== undefined && typeof z.name === "string"){return true;}else{return false;}})(myDog));
- text: <code>myDog</code> should contain the property <code>legs</code> and it should be a <code>number</code>.
testString: assert((function(z){if(z.hasOwnProperty("legs") && z.legs !== undefined && typeof z.legs === "number"){return true;}else{return false;}})(myDog));
- text: <code>myDog</code> should contain the property <code>tails</code> and it should be a <code>number</code>.
testString: assert((function(z){if(z.hasOwnProperty("tails") && z.tails !== undefined && typeof z.tails === "number"){return true;}else{return false;}})(myDog));
- text: <code>myDog</code> should contain the property <code>friends</code> and it should be an <code>array</code>.
testString: assert((function(z){if(z.hasOwnProperty("friends") && z.friends !== undefined && Array.isArray(z.friends)){return true;}else{return false;}})(myDog));
- text: <code>myDog</code> should only contain all the given properties.
testString: assert((function(z){return Object.keys(z).length === 4;})(myDog));
Challenge Seed
// Example
var ourDog = {
"name": "Camper",
"legs": 4,
"tails": 1,
"friends": ["everything!"]
};
// Only change code below this line.
var myDog = {
};
After Tests
(function(z){return z;})(myDog);
Solution
var myDog = {
"name": "Camper",
"legs": 4,
"tails": 1,
"friends": ["everything!"]
};