Open MarynaBasieva opened 7 months ago
Task 2 ВИ змінили тип властивості name з рядка на об'єкт, розділивши її на дві підвластивості: firstName та lastName. Об'єкту були присвоєні відповідні значення "Alex" і "Ivanov".
Проте в коді можна внести деякі покращення.
Пробіл перед значенням "Alex" у властивості firstName відокремлюється від імені, що може призвести до непотрібних пробілів при виведенні. Немає потреби виводити тип властивості name на консоль, оскільки ми вже змінили його на об'єкт, і це очевидно з самого вигляду властивості.
Task 3
Ви створили метод bio() об'єкту person, який виводить ім'я, прізвище та вік користувача на консоль, використовуючи дані, збережені в об'єкті.
У рядку виведення можна покращити читабельність, розділивши його на кілька рядків. Цей метод використовує тільки об'єкт person, тому можна визначити його як метод об'єкту person, використовуючи звичайний синтаксис створення методу. Ось оновлений код:
person.bio = function () {
console.log(My name is ${this.name.firstName}
);
console.log(My lastName is ${this.name.lastName}
);
console.log(I am ${this.age} years old.
);
};
person.bio();
Task6
Ви створили функцію-конструктор Person, яка приймає аргумент name та повертає новий об'єкт з властивістю name та методом introduceSelf. Ви створили два екземпляри об'єкта mary та tom за допомогою цієї функції. Однак, ви намагалися перевірити, чи містить об'єкт mary властивість з назвою prop, але забули встановити цю властивість для mary. Тому результат перевірки буде false.
Код має деякі неточності, які можна виправити.
Task7 Проте ви забули використати ключове слово new, щоб створити новий об'єкт з об'єкту-конструктора DirtyMartini. Ви використали просте викликання функції, тому результатом буде об'єкт, а не екземпляр DirtyMartini. Щоб виправити цю помилку, потрібно додати new перед викликом конструктора:
const myMartini = new DirtyMartini();
Дуже дякую за ревью коду!
Task1 У коді також присутні два виклики console.log, які виводять значення властивостей об'єкту person та типи цих властивостей на консоль.
Код функціонально працює коректно, але є кілька покращень, які можна внести:
Замість створення об'єкта через new Object(), можна використати літеральну нотацію об'єкта {} для більшої читабельності. Для перевірки типів властивостей краще використовувати оператор typeof, щоб отримати рядкове представлення типу, а не функцію typeof, яка також може бути викликана як операція. Краще використовувати одинарні лапки для значень властивостей об'єкту, оскільки вони більш стандартизовані в JavaScript.