====== Обявление обекта======
let myObject={
a: 12,
b: true,
c: 'ssfd'
}
[[https://wiki.1chostingcloud.com/doku.php?id=objavlenie_obekta|https://wiki.1chostingcloud.com/doku.php?id=objavlenie_obekta]]
====== Добавление значения в обьекте======
Присваивание значения новому свойству
myObject.svoistvo1 = 'vsfdv'
Назначение значения свойствам из переменних
const name = 'tro'
const postq = 40
const userProfile ={
name,
postq,
myNewParam: true
}
====== Удаление значения в обьекте======
**delete**
delete myObject.svoistvo1 - Удаление в обїекте peremenna свойтва svoistvo1
====== Копирование обьекта ======
- const person2 = Object.**assign**({}, person) - но если внутри били тоже обекти - то ссилки сохраняться
- const person2 = {...person1} - но если внутр біли тоже обекті - то ссілки сохраняться
- const myCity2 = **JSON.parse**(**JSON.stringify**(myCity1)) - полностью создает копию
====== Разделение обекта на составние свойства ======
**...**
const userProfile ={
name,
postq,
myNewParam: true
}
const param2 = {...userProfile}
====== this - Обращение к контексту обекта ======
**this**
Звжди повертає контекст ТІЛЬКИ того обїекта з котрого викликається незалежно від вкладенностей, ланцюжків виклику і т.д.
const person2 = {
name: "Brian",
greeting: function () {
alert("Hi! I'm " + this.name + ".");
},
**Крок 1**
Це стрілочна функція?
Якщо відповідь Так, значення this те саме, що у this у зовнішній області видимості (батьківский обїект)
Якщо відповідь Ні, переходь на Крок 2
**Крок 2**
Чи використовуються методи call, apply або bind?
Якщо відповідь Так, значення this — це той самий об’єкт, що передали при їх виклику (батьківський обїект)
Якщо відповідь Ні, переходь на Крок 3
**Крок 3**
Функція викликається як метод об’єкта object.method?
Якщо відповідь Так, значення this — це об’єкт ліворуч від крапки
Якщо відповідь Ні, переходь на Крок 4
**Крок 4**
* якщо у строгому режимі - значення this повертає "undefined"
* якщо не у строгому - значення this повертає "window" (браузер)
====== Перелік усіх властивостей обїекту ======
Повертає як масив
let Mymas = Object.keys(myObject)
====== Перелік усіх значень обїекту ======
Повертає як масив
let Mymas = Object.values(myObject)