
Методы объекта JavaScript — это функции, связанные с объектами, и их можно вызывать для этих объектов для выполнения определенных действий. они определяются как свойства объекта и предоставляют функциональные возможности для управления, доступа или взаимодействия с данными объекта.
Объектные методы — это мощные возможности JavaScript, позволяющие инкапсулировать связанные функции внутри объекта и работать с его внутренним состоянием. Эти методы могут изменять свойства объекта, извлекать данные из объекта, выполнять вычисления и многое другое.
чтобы определить метод объекта, вам нужно назначить функцию как значение свойства внутри объекта. Затем метод можно вызвать, используя точечную запись, обратившись к свойству, содержащему метод, и, следовательно, вызвав его как функцию.
Пример объектного метода.
const person = {
name: 'James',
age: 27,
sayHello: function() {
console.log('Hello, my name is ${this.name} I am ${this.age} years old.');
}
};
person.sayHello();
Важные встроенные методы объектов.
- Object.keys(obj): возвращает массив перечисляемых имен свойств объекта.
const obj = {name:"James", age: 27, gender: "male"};
const keys = Object.keys(obj);
console.log(keys); //Output : ['name', 'age', 'gender']
2. Object.values(obj): возвращает массив, содержащий значения объекта.
const obj = {name:"James", age: 27, gender: "male"};
const values = Object.valuess(obj);
console.log(values); //Output : ['James', 27, 'male']
3. Object.entries(obj): возвращает массив пар ключ-значение свойства объекта.
const obj = {name:"James", age: 27, gender: "male"};
const entries = Object.entries(obj);
console.log(keys); //Output : [['name', 'James'], ['age', 27], ['gender', 'male']]
4. Object.assign(target, …sources): копирует значения всех перечисляемых свойств из одного или нескольких исходных объектов в целевой объект.
const target = {};
const source = {name:"James", age: 27, gender: "male"};
Object.assign(target, source);
console.log(target); // Output: {name:"James", age: 27, gender: "male"}
5. Object.hasOwnProperty(prop): возвращает логическое значение, указывающее, имеет ли объект указанное свойство как собственное свойство и не унаследовано.
const obj = {name:"James", age: 27, gender: "male"};
console.log(obj.hasOwnProoerty('name')); // Output: true
console.log(obj.hasOwnProoerty('lastName')); // Output: false
6. Object.freeze(obj): замораживает объект, предотвращая добавление новых свойств и удаление существующих.
const obj = {name:"James", age: 27, gender: "male"};
Object.freeze(obj);
obj.age = 30; // the assignment is ignored in strict mode or throws an error in non-strict mode.
console.log(obj); // Output: {name:"James", age: 27, gender: "male"}
Это основные встроенные методы объекта, которые должен знать и понимать любой разработчик JavaScript. уделите время изучению различий между freeze() и seal(). Если вы найдете эту статью полезной. хлопайте в ладоши и подписывайтесь, чтобы узнать больше.