Далее на странице...
Здесь начинается практика и будет положено начало к созданию первого консольного приложения. Изучение большинства языков программирования именно с этого и начинается - с разработки приложения в консоли.
Здесь мы создадим объект и рассмотрим способы добавления свойств в объект.
Как это будет происходить?
1. В этой статье мы начнем создавать приложение
2. В дальнейшем это приложение будет дополняться и расширяться его функционал. Так происходит при создании любого реального приложения. Кроме этого, необходимо уметь рефакторить код проекта, то есть переписывать его под новые условия и требования.
3. После прохождения каждого контрольного пункта нужно будет создавать коммит и правильно его подписывать. Это позволит закрепить материал по работе с системой контроля версий GIT и сервисом GitHub.
4. Практическое задание желательно выполнить самостоятельно. Или хотя бы постараться это сделать. Решения могут немного отличаться. Это нормально.
Условие задачи:
1) Создать переменную numberOfFilms и в нее поместить ответ от пользователя на вопрос: "Сколько фильмов вы уже посмотрели"?
2) Создать объект personalMovieDB и в него поместить такие свойства:
- count - сюда передается ответ на первый вопрос;
- movies - в это свойство поместить пустой объект;
- actors - тоже поместить пустой объект;
- genres - сюда поместить пустой массив;
- private - в это свойство поместить boolean (логическое) значение false;
3) Задайте пользователю два раза вопросы:
- "Один из последних просмотренных фильмов?"
- "На сколько оцените его?"
Ответы стоит поместить в отдельные переменные.
Записать ответы в объект
Проверить, чтобы все работало без ошибок в консоли.
Подсказка: в п. 3 нужно будет записать новые свойства в объект. Это можно сделать двумя способами:
1) Через точку: .свойство
2) Через квадратные скобки: [свойство] - Рекомендуется
Решение №1 - Добавление свойств в объект через квадратные скобки
const numberOfFilms = +prompt('Сколько фильмов вы уже посмотрели?');
/* Плюс позволяет конвертировать строку в число */
/* объект personalMovieDB */
const personalMovieDB = {
count: numberOfFilms,
movies: {},
actors: {},
genres: [],
private: false
};
const a = prompt("Один из последних просмотренных фильмов?"),
b = prompt("На сколько оцените его?"),
c = prompt("Один из последних просмотренных фильмов?"),
d = prompt("На сколько оцените его?");
//Добавление свойств в объект через квадратные скобки
personalMovieDB.movies[a] = b;
personalMovieDB.movies[c] = d;
console.log(personalMovieDB);
Результат в консоли
Object
actors: {}
count: 21
genres: []
movies: {Боец: "4", Хлоя: "3"}
private: false
Решение №1 - Перейти в браузер
Здесь код работает правильно. Далее рассмотрим то же решение, но отличие будет заключаться в том, что свойства в объект будут добавляться через точку.
Решение №2 - Добавление свойств в объект через точку
const numberOfFilms = +prompt('Сколько фильмов вы уже посмотрели?');
const personalMovieDB = {
count: numberOfFilms,
movies: {},
actors: {},
genres: [],
private: false
};
const a = prompt("Один из последних просмотренных фильмов?"),
b = prompt("На сколько оцените его?"),
c = prompt("Один из последних просмотренных фильмов?"),
d = prompt("На сколько оцените его?");
//Добавление свойств в объект через точку
personalMovieDB.movies.a = b;
personalMovieDB.movies.c = d;
console.log(personalMovieDB);
Результат в консоли
Object
actors: {}
count: 21
genres: []
movies: {a: "4", c: "3"}
private: false
Решение №2 - Перейти в браузер
Здесь уже иной результат: в качестве свойств объекта a и c.
мы видим переменныеЕсли вернуться в решение №1, то в качестве свойств объекта И это правильно.
мы видим введенные (произвольные) пользователем значения.Вот так (не совсем корректно) в некоторых ситуациях выглядит добавление свойств в объект через точку. Поэтому не только в этом частном случае, но и в целом, рекомендуется добавлять свойства в объект через квадратные скобки.