javascript-this Flashcards

1
Q

What is this in JavaScript?

A

An implicit parameter of all JavaScript functions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does it mean to say that this is an “implicit parameter”?

A

It is available in a function’s code block even though it was never included in the function’s parameter list or declared with var

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

When is the value of this determined in a function; call time or definition time?

A

Call time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What does this refer to in the following code snippet?
var character = {
firstName: ‘Mario’,
greet: function () {
var message = ‘It's-a-me, ‘ + this.firstName + ‘!’;
console.log(message);
}
};

A

The character object

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Given the above character object, what is the result of the following code snippet? Why?
character.greet();

A

The result would be: “It’s-a-me, Mario!” because ‘this’ refers to the object being called which has a firstName property with a value of Mario

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Given the above character object, what is the result of the following code snippet? Why?
var hello = character.greet;
hello();

A

The result would be: “It’s-a-me, undefined!” because ‘this’ refers to the window because there is nothing to the left of hello so it defaults to the window which does not have a firstName property

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How can you tell what the value of this will be for a particular function or method definition?

A

You can’t tell because the value of ‘this’ is only determined at call time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How can you tell what the value of this is for a particular function or method call?

A

By looking at the object to the left of the dot

How well did you know this?
1
Not at all
2
3
4
5
Perfectly