javascript-this Flashcards

1
Q

What is this in JavaScript?

A

this is an implicit parameter of all JavaScript Functions; a keyword this is determined/defined at the call time

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 means it is available in a function’s code block even though it was never included in the function’s parameter list or declared

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

“It’s-a-me, Mario!”

Because the greet property has a function and this.firstName is basically character.firstName

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

undefined

Because the hello variable this.firstName would be undefined

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 look at the object

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

you look at the object to the left of the dot

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