Flash cards
Review the key moves
What is the main idea behind JavaScript this Keyword?
Lesson checks
Practice each idea before moving on
Short Mimo-style checks built from this lesson's code, terms, and sequence.
Which statement best captures the main point of this lesson?
Complete the missing token from the example code.
___ person = {Put the learning moves in the order that makes the concept easiest to apply.
this in Objects
The this keyword refers to an object.
In JavaScript, this is used to access the object that is calling a method.
this in an Object Method
When used inside an object method, this refers to the object.
Example
const person = {
firstName: "John", lastName: "Doe", age: 50, fullName: function() {
return this.firstName + " " + this.lastName;
}
};In the example above
- this.firstName refers to the firstName property of the person object
- this.lastName refers to the lastName property of the person object
Why Use this ?
The this keyword makes it possible to use the same method with different objects.
Example
const person1 = {
name: "John", hello: function() {
return "Hello " + this.name;
}
};
const person2 = {
name: "Anna", hello: function() {
return "Hello " + this.name;
}
};
document.getElementById("demo").innerHTML = person1.hello();this Alone
When used alone, this refers to the global object.
In a browser, the global object is the window object.
Example
let x = this;
document.getElementById("demo").innerHTML = x;In strict mode, this is undefined when used alone.
this in a Function
In a regular function, this also refers to the global object.
Example
function myFunction() {
return this;
}
document.getElementById("demo").innerHTML = myFunction();Summary
- In an object method, this refers to the object
- this lets methods access object properties
- Used alone, this refers to the global object
See Also
What are JavaScript Objects?
What are Object Properties?
What are Object Methods?
How to Display JavaScript Objects
What is an Object Constructor?
Advanced Chapters
JavaScript Object Definitions
JavaScript Object Advanced this
JavaScript Object Iterations
JavaScript Object Getters & Setters
JavaScript Object Management
JavaScript Object Protection
JavaScript Object Prototypes
JavaScript Object Reference