Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
object [2023/07/29 16:18] tro |
object [2023/12/12 18:35] (текущий) tro [this - Обращение к контексту обекта] |
||
|---|---|---|---|
| Строка 34: | Строка 34: | ||
| - const myCity2 = **JSON.parse**(**JSON.stringify**(myCity1)) - полностью создает копию | - const myCity2 = **JSON.parse**(**JSON.stringify**(myCity1)) - полностью создает копию | ||
| ====== Разделение обекта на составние свойства ====== | ====== Разделение обекта на составние свойства ====== | ||
| + | **...** | ||
| < | < | ||
| - | ... - перед имнем обьекта разделяет обьект на его войства | + | const userProfile ={ |
| - | let a = ...myObject | + | name, |
| + | postq, | ||
| + | myNewParam: true | ||
| + | } | ||
| + | |||
| + | const param2 | ||
| </ | </ | ||
| - | ====== Обращение к имени текущего | + | ====== |
| **this** | **this** | ||
| + | Звжди повертає контекст ТІЛЬКИ того обїекта з котрого викликається незалежно від вкладенностей, | ||
| < | < | ||
| const person2 = { | const person2 = { | ||
| Строка 46: | Строка 53: | ||
| alert(" | alert(" | ||
| }, | }, | ||
| + | </ | ||
| + | |||
| + | **Крок 1** | ||
| + | |||
| + | Це стрілочна функція? | ||
| + | |||
| + | Якщо відповідь Так, значення this те саме, що у this у зовнішній області видимості (батьківский обїект) | ||
| + | Якщо відповідь Ні, переходь на Крок 2 | ||
| + | |||
| + | |||
| + | **Крок 2** | ||
| + | |||
| + | Чи використовуються методи call, apply або bind? | ||
| + | |||
| + | Якщо відповідь Так, значення this — це той самий об’єкт, | ||
| + | Якщо відповідь Ні, переходь на Крок 3 | ||
| + | |||
| + | |||
| + | **Крок 3** | ||
| + | |||
| + | Функція викликається як метод об’єкта object.method? | ||
| + | |||
| + | Якщо відповідь Так, значення this — це об’єкт ліворуч від крапки | ||
| + | Якщо відповідь Ні, переходь на Крок 4 | ||
| + | |||
| + | |||
| + | **Крок 4** | ||
| + | |||
| + | * якщо у строгому режимі - значення this повертає " | ||
| + | * якщо не у строгому - значення this повертає | ||
| + | |||
| + | ====== Перелік усіх властивостей обїекту ====== | ||
| + | Повертає як масив | ||
| + | < | ||
| + | let Mymas = Object.keys(myObject) | ||
| + | </ | ||
| + | ====== Перелік усіх значень обїекту ====== | ||
| + | Повертає як масив | ||
| + | < | ||
| + | let Mymas = Object.values(myObject) | ||
| </ | </ | ||