Skip to content

Instantly share code, notes, and snippets.

function Rabbit() {}
Rabbit.prototype = {
eats: true
};
var rabbit = new Rabbit();
console.log(rabbit.eats ); // (1) ?
function Rabbit(name) {}
Rabbit.prototype = {
eats: true
};
var rabbit = new Rabbit();
Rabbit.prototype.eats = false;
console.log( rabbit.eats );
function Rabbit() {}
Rabbit.prototype = {
eats: true
};
var rabbit = new Rabbit();
Rabbit.prototype = {}; // (*)
console.log( rabbit.eats ); // (2) ?
function Rabbit(name) {}
Rabbit.prototype = {
eats: true
};
var rabbit = new Rabbit();
Rabbit.prototype.eats = false; // (*)
console.log( rabbit.eats ); // (3) ?
function Rabbit(name) {}
Rabbit.prototype = {
eats: true
};
var rabbit = new Rabbit();
delete rabbit.eats; // (*)
console.log( rabbit.eats ); // (4) ?
function Rabbit(name) {}
Rabbit.prototype = {
eats: true
};
var rabbit = new Rabbit();
delete Rabbit.prototype.eats; // (*)
console.log( rabbit.eats ); // (5) ?
function Rabbit(name) {
this.name = name;
}
Rabbit.prototype.sayHi = function() {
console.log( this.name );
}
var rabbit = new Rabbit('Rabbit');
rabbit.sayHi(); // (1) ?
let obj = {};
console.log(obj.toString()) // [object Object] ???
var arr = [1, 2, 3];
console.log(arr) // 1,2,3, result of arr.__proto__ -> Array.prototype.toString
/*
1. create method in string prototype
2. it should return multiple repeated string by n times
consle.log( "foo".repeat(3) ); // 'foofoofoo'
*/
String.prototype.repeat = function(times) { //or use built-in ES6 repeat()
return new Array(times + 1).join(this);
};