Об’єкт javaScript — це сутність, яка має стан і поведінку (властивості та метод). Наприклад: автомобіль, ручка, велосипед, стілець, скло, клавіатура, монітор тощо.
JavaScript — це об’єктно-орієнтована мова. У JavaScript усе є об’єктом.
JavaScript базується на шаблонах, а не на класах. Тут ми не створюємо клас, щоб отримати об’єкт. Але ми безпосередньо створюємо об’єкти.
Створення об’єктів у JavaScript
Існує 3 способи створення об’єктів.
- За літералом об’єкта
- Шляхом безпосереднього створення екземпляра Object (за допомогою нового ключового слова)
- За допомогою конструктора об’єктів (за допомогою нового ключового слова)
1) Об’єкт за літералом JavaScript
Синтаксис створення об’єкта за допомогою об’єктного літералу наведено нижче:
object={property1:value1,property2:value2.....propertyN:valueN}
Як бачите, властивість і значення розділені двокрапкою.
Давайте розглянемо простий приклад створення об’єкта в JavaScript.
emp={id:102,name:'Shyam Kumar',salary:40000} document.write(emp.id+' '+emp.name+' '+emp.salary);Перевірте зараз
Результат наведеного вище прикладу
2) Створенням екземпляра Object
Синтаксис безпосереднього створення об'єкта наведено нижче:
var objectname=new Object();
тут, нове ключове слово використовується для створення об'єкта.
Розглянемо приклад безпосереднього створення об’єкта.
var emp=new Object(); emp.id=101; emp.name='Ravi Malik'; emp.salary=50000; document.write(emp.id+' '+emp.name+' '+emp.salary);Перевірте зараз
Результат наведеного вище прикладу
3) За допомогою конструктора Object
Тут вам потрібно створити функцію з аргументами. Кожне значення аргументу можна призначити в поточному об’єкті за допомогою цього ключового слова.
The це ключове слово посилається на поточний об'єкт.
Приклад створення об'єкта конструктором об'єктів наведено нижче.
function emp(id,name,salary){ this.id=id; this.name=name; this.salary=salary; } e=new emp(103,'Vimal Jaiswal',30000); document.write(e.id+' '+e.name+' '+e.salary);Перевірте зараз
Результат наведеного вище прикладу
Визначення методу в об’єкті JavaScript
Ми можемо визначити метод в об’єкті JavaScript. Але перед визначенням методу нам потрібно додати властивість у функцію з тим же ім’ям, що й метод.
Нижче наведено приклад визначення методу в об’єкті.
function emp(id,name,salary){ this.id=id; this.name=name; this.salary=salary; this.changeSalary=changeSalary; function changeSalary(otherSalary){ this.salary=otherSalary; } } e=new emp(103,'Sonoo Jaiswal',30000); document.write(e.id+' '+e.name+' '+e.salary); e.changeSalary(45000); document.write(' <br>'+e.id+' '+e.name+' '+e.salary);Перевірте зараз
Результат наведеного вище прикладу
Методи об’єктів JavaScript
Нижче наведено різні методи Object:
Так ні | методи | опис |
---|---|---|
1 | Object.assign() | Цей метод використовується для копіювання перелічуваних і власних властивостей з вихідного об’єкта в цільовий об’єкт |
2 | Object.create() | Цей метод використовується для створення нового об’єкта з указаним прототипом об’єкта та властивостями. |
3 | Object.defineProperty() | Цей метод використовується для опису деяких поведінкових атрибутів властивості. |
4 | Object.defineProperties() | Цей метод використовується для створення або налаштування кількох властивостей об’єкта. |
5 | Object.entries() | Цей метод повертає масив із масивами пар ключів і значень. |
6 | Object.freeze() | Цей метод запобігає видаленню існуючих властивостей. |
7 | Object.getOwnPropertyDescriptor() | Цей метод повертає дескриптор властивості для вказаної властивості вказаного об’єкта. |
8 | Object.getOwnPropertyDescriptors() | Цей метод повертає всі власні дескриптори властивостей заданого об’єкта. |
9 | Object.getOwnPropertyNames() | Цей метод повертає масив усіх знайдених властивостей (перелічуваних чи ні). |
10 | Object.getOwnPropertySymbols() | Цей метод повертає масив усіх властивостей ключа символу. |
одинадцять | Object.getPrototypeOf() | Цей метод повертає прототип зазначеного об'єкта. |
12 | Object.is() | Цей метод визначає, чи є два значення однаковими. |
13 | Object.isExtensible() | Цей метод визначає, чи є об’єкт розширюваним |
14 | Object.isFrozen() | Цей метод визначає, чи був об’єкт заморожений. |
п'ятнадцять | Object.isSealed() | Цей метод визначає, чи запечатаний об’єкт. |
16 | Object.keys() | Цей метод повертає масив імен властивостей даного об’єкта. |
17 | Object.preventExtensions() | Цей метод використовується для запобігання будь-яким розширенням об’єкта. |
18 | Object.seal() | Цей метод запобігає додаванню нових властивостей і позначає всі наявні властивості як такі, що не підлягають налаштуванню. |
19 | Object.setPrototypeOf() | Цей метод встановлює прототип зазначеного об’єкта на інший об’єкт. |
двадцять | Object.values() | Цей метод повертає масив значень. |