"THIS", Apply, Call Flashcards
what is “this”
the object that is executing the current function
if the function is part of an object we call it a _____
method
if the function is part of an object “THIS” references _____
itself
If the function is a regular function and not part of an object “THIS” references _______
global object
global object is_______ object in browsers & _______ in node
window
global
this. table = “windowtable”;
console. log(__________);
//Call on a GLOBAL scale
window.table
this.garage = {
table: “junk”;
}
//Call on a GLOBAL scale
this. garage.table
window. garage.table
let stevesRoom = { table: "steves table" }; console.log(this.stevesRoom.table); // returns?
syntax error
“this” refers to global object
this.garage = {
table: “junk”,
cleanTable(){
console.log(cleaing ${this.table}
)
}
}
this.garage.table(); // returns
type error
this.table = ‘window table’;
const cleanTable = function (){ console.log(`cleaing ${this.table}`) }; cleanTable();
type error
“this” doesn’t have access to global property.
The _______method calls a function with a given this value, and arguments provided as an array (or an array-like object).
apply()
The _____ method calls a function with a given this value and arguments provided individually.
call()
function Product(name, price) { this.name = name; this.price = price; }
function Food(name, price) { \_\_\_\_\_\_\_\_\_\_(this, name, price); this.category = 'food'; }
console.log(new Food('cheese', 5).name); // expected output: "cheese"
product.call
const cleanTable = function (soap){ console.log(`cleaing ${this.table} using ${soap}`) }; cleanTable();
this.garage = {
table: “junk”,
}
//use call to output;
// cleaing junk using some soap
cleanTable.call(this.garage, ‘some soap’);
The ______ method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.
bind()