JavaScript Object Methods
What are Object Methods?
Methods are actions that can be performed on objects.
Methods are functions stored as property values.
Example
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
fullName: function() {
return this.firstName + " " +
this.lastName;
}
};
Try it Yourself »
| Property | Value |
|---|---|
| firstName | John |
| lastName | Doe |
| age | 50 |
| fullName | function() { return this.firstName + " " + this.lastName; } |
The this Keyword
In an object method, this refers to the object.
Example 1
const person = {
firstName: "John",
lastName: "Doe",
id: 5566,
getId: function() {
return this.id;
}
};
let number = person.getId();
Try it Yourself »In the example above, this refers to the person object.
this.id means the id property of the person object.
Example 2
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
fullName: function() {
return this.firstName + " " +
this.lastName;
}
};
Try it Yourself »
In the example above, this refers to the person object.
this.firstName means the firstName property of the person object.
this.lastName means the lastName property of the person object.
Accessing Object Methods
To call an object method, add parentheses ():
Without parentheses you get the function itself.
Syntax
objectName.methodName()
If you call a method with parentheses, it will execute as a function:
If you call a method without parentheses, it will return the function definition:
Adding a Method to an Object
You can add a method to an object by assigning a function to a property:
Example
// Assign person.name to a function
person.name = function () {
return this.firstName + " " + this.lastName;
};
Try it Yourself »
In the example above, person.name is a property with a function assigned to it.
Adding a JavaScript Method
This example uses the JavaScript toUpperCase() method to convert a text
to uppercase:
Example
person.name = function () {
return (this.firstName + " " + this.lastName).toUpperCase();
};
Try it Yourself »
Summary
- Methods are functions stored as object properties
- Call a method with parentheses: person.fullName()
- In methods, this refers to the object
- You can add methods to objects by assigning a function to a property
See Also:
Advanced Chapters:
JavaScript Object Advanced this
JavaScript Object Destructuring