Skip to content

Instantly share code, notes, and snippets.

View sevperez's full-sized avatar

Severin Perez sevperez

View GitHub Profile
function setMovie(movie) {
this.movie = movie;
}
var theater = {
loadProjector: setMovie.bind(theater),
};
var television = {};
function Movie(title, director) {
this.title = title;
this.director = director;
}
var independenceDay = new Movie("Independence Day", "Roland Emmerich");
console.log(independenceDay.title); // "Independence Day"
console.log(independenceDay.director); // "Roland Emmerich"
function setMovie(movie) {
this.movie = movie;
}
var theater = {
loadProjector: setMovie,
playMovie: function(movie, previewLength) {
this.loadProjector(movie);
// option 1
var theater = {
playMovie: function(movie, previewLength) {
this.loadProjector(movie);
setTimeout(function() {
console.log("Now playing: " + this.movie);
}.bind(this), previewLength);
}
}
function setMovie(movie) {
this.movie = movie;
}
var theater = {
loadProjector: setMovie,
playMovie: function(movie, previewLength) {
this.loadProjector(movie);
function makeRobot(name, job) {
return {
name: name,
job: job,
introduce: function() {
console.log("Hi! I'm " + this.name + ". My job is " + this.job + ".");
},
};
}
function Robot(name, job) {
this.name = name;
this.job = job;
this.introduce = function() {
console.log("Hi! I'm " + this.name + ". My job is " + this.job + ".");
};
}
var bender = new Robot("Bender", "bending");
function Robot(name, job) {
this.name = name;
this.job = job;
}
Robot.prototype.introduce = function() {
console.log("Hi! I'm " + this.name + ". My job is " + this.job + ".");
};
var bender = new Robot("Bender", "bending");
var Robot = {
init: function(name, job) {
this.name = name;
this.job = job;
},
introduce: function() {
console.log("Hi! I'm " + this.name + ". My job is " + this.job + ".");
},
};
// Function definition and invocation
function speak(string) {
console.log(string);
}
speak("Hello"); // logs "Hello"
// Store in a variable
var talk = speak;
talk("Hi"); // logs "Hi"