pavlena81 / QAL-new-project

https://pavlena81.github.io/QAL-new-project/
https://qal-new-project.vercel.app
0 stars 0 forks source link

HW20 #16

Open MarynaBasieva opened 7 months ago

MarynaBasieva commented 7 months ago

Task1 У коді також присутні два виклики console.log, які виводять значення властивостей об'єкту person та типи цих властивостей на консоль.

Код функціонально працює коректно, але є кілька покращень, які можна внести:

Замість створення об'єкта через new Object(), можна використати літеральну нотацію об'єкта {} для більшої читабельності. Для перевірки типів властивостей краще використовувати оператор typeof, щоб отримати рядкове представлення типу, а не функцію typeof, яка також може бути викликана як операція. Краще використовувати одинарні лапки для значень властивостей об'єкту, оскільки вони більш стандартизовані в JavaScript.

MarynaBasieva commented 7 months ago

Task 2 ВИ змінили тип властивості name з рядка на об'єкт, розділивши її на дві підвластивості: firstName та lastName. Об'єкту були присвоєні відповідні значення "Alex" і "Ivanov".

Проте в коді можна внести деякі покращення.

Пробіл перед значенням "Alex" у властивості firstName відокремлюється від імені, що може призвести до непотрібних пробілів при виведенні. Немає потреби виводити тип властивості name на консоль, оскільки ми вже змінили його на об'єкт, і це очевидно з самого вигляду властивості.

MarynaBasieva commented 7 months ago

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();

MarynaBasieva commented 7 months ago

Task6

Ви створили функцію-конструктор Person, яка приймає аргумент name та повертає новий об'єкт з властивістю name та методом introduceSelf. Ви створили два екземпляри об'єкта mary та tom за допомогою цієї функції. Однак, ви намагалися перевірити, чи містить об'єкт mary властивість з назвою prop, але забули встановити цю властивість для mary. Тому результат перевірки буде false.

Код має деякі неточності, які можна виправити.

MarynaBasieva commented 7 months ago

Task7 Проте ви забули використати ключове слово new, щоб створити новий об'єкт з об'єкту-конструктора DirtyMartini. Ви використали просте викликання функції, тому результатом буде об'єкт, а не екземпляр DirtyMartini. Щоб виправити цю помилку, потрібно додати new перед викликом конструктора:

const myMartini = new DirtyMartini();

pavlena81 commented 7 months ago

Дуже дякую за ревью коду!