alert не выводит часть объекта
Есть небольшой код, и надо чтобы после alert вывел то что записал юзер в часть объекта
const numberOfFilms = +prompt("Сколько фильмов вы уже посмотрели?", "");
const personalMovieDB = {
count: numberOfFilms,
movies: {},
actors: {},
genres: [],
privat: false
};
const a = prompt('Один из последних просмотренных фильмов?', ''),
b = prompt('На сколько оцените его?', ''),
c = prompt('Один из последних просмотренных фильмов?', ''),
d = prompt('На сколько оцените его?', '');
personalMovieDB.movies[a] = b;
personalMovieDB.movies[c] = d;
alert(personalMovieDB.movies);
Ответы (2 шт):
Автор решения: Михаил Непомнящий
→ Ссылка
Алерт выводит строку, а объект при преобразовании в строку даст [object Object]. Это корректное поведение.
Организуйте вывод по-другому. Например, заведите шаблонную строку.
alert(`a: ${personalMovieDB.movies.a}, b: ${personalMovieDB.movies.b}`)
Автор решения: vsemozhebuty
→ Ссылка
Попробуйте так:
const numberOfFilms = +prompt("Сколько фильмов вы уже посмотрели?", "");
const personalMovieDB = {
count: numberOfFilms,
movies: {},
actors: {},
genres: [],
privat: false
};
const a = prompt('Один из последних просмотренных фильмов?', ''),
b = prompt('На сколько оцените его?', ''),
c = prompt('Один из последних просмотренных фильмов?', ''),
d = prompt('На сколько оцените его?', '');
personalMovieDB.movies[a] = b;
personalMovieDB.movies[c] = d;
alert(
Object.entries(personalMovieDB.movies)
.reduce((str, [key, value]) => `${str}${key}: ${value}\n`, '')
);