Description
JavaScript objects have methods.
Syntax
Basic syntax
Objects can also have methods
let robot = {};
robot.speak = function(name) {
console.log(`${name} is alive!`)
}
robot.speak("Johnny 5")
Properties
Of course methods can use object properties and functions can be passed as properties
let robot = {name: "Johnny 5", speak};
function speak(state) {
console.log(`${this.name} is ${state}!`)
}
robot.speak("alive")
This
this
parameter can also be passed explicitly using a functions call
method, if that’s socially acceptable in your culture:
let robot = {name: "Johnny 5"};
function speak(state) {
console.log(`${this.name} is ${state}!`)
}
speak.call(robot, "alive")