--- id: 587d7b7d367417b2b2512b1f title: Modify an Array Stored in an Object challengeType: 1 forumTopicId: 301163 localeTitle: Измените массив, хранящийся в объекте --- ## Description
Теперь вы видели все основные операции для объектов JavaScript. Вы можете добавлять, изменять и удалять пары ключ-значение, проверять наличие ключей и перебирать все ключи в объекте. По мере продолжения изучения JavaScript вы увидите еще более универсальные приложения объектов. Кроме того, дополнительные уроки Advanced Data Structures далее в учебной программе также охватывают объекты ES6 Map и Set , оба из которых похожи на обычные объекты, но предоставляют некоторые дополнительные функции. Теперь, когда вы изучили основы массивов и объектов, вы полностью готовы приступить к решению более сложных проблем с помощью JavaScript!
## Instructions
Взгляните на объект, который мы предоставили в редакторе кода. user объект содержит три ключа. Ключ data содержит пять ключей, один из которых содержит массив friends . Из этого вы можете видеть, как гибкие объекты являются структурами данных. Мы начали писать функцию addFriend . Закончите запись, чтобы он взял объект user и добавил имя аргумента friend в массив, хранящийся в user.data.friends и возвращает этот массив.
## Tests
```yml tests: - text: The user object has name, age, and data keys testString: assert('name' in user && 'age' in user && 'data' in user); - text: The addFriend function accepts a user object and a friend string as arguments and adds the friend to the array of friends in the user object testString: assert((function() { let L1 = user.data.friends.length; addFriend(user, 'Sean'); let L2 = user.data.friends.length; return (L2 === L1 + 1); })()); - text: addFriend(user, "Pete") should return ["Sam", "Kira", "Tomo", "Pete"] testString: assert.deepEqual((function() { delete user.data.friends; user.data.friends = ['Sam', 'Kira', 'Tomo']; return addFriend(user, 'Pete') })(), ['Sam', 'Kira', 'Tomo', 'Pete']); ```
## Challenge Seed
```js let user = { name: 'Kenneth', age: 28, data: { username: 'kennethCodesAllDay', joinDate: 'March 26, 2016', organization: 'freeCodeCamp', friends: [ 'Sam', 'Kira', 'Tomo' ], location: { city: 'San Francisco', state: 'CA', country: 'USA' } } }; function addFriend(userObj, friend) { // change code below this line // change code above this line } console.log(addFriend(user, 'Pete')); ```
## Solution
```js let user = { name: 'Kenneth', age: 28, data: { username: 'kennethCodesAllDay', joinDate: 'March 26, 2016', organization: 'freeCodeCamp', friends: [ 'Sam', 'Kira', 'Tomo' ], location: { city: 'San Francisco', state: 'CA', country: 'USA' } } }; function addFriend(userObj, friend) { userObj.data.friends.push(friend); return userObj.data.friends; } ```