I do a classical JavaScript object initialization like this, it works like a charm:
function Hero(a, n) {
this.nom = a;
this.job = n;
this.quiSuisJe = function() {
return "Mon nom est "+this.nom+" et je suis un "+this.job;
}
}
var x = new Hero("Joe", "Ninja");
var y = new Hero("Jinx", "Carry AD");
console.log(x.quiSuisJe());
console.log(y.quiSuisJe());
But if I change the quiSuisJe
function like this:
function Hero(a, n) {
this.nom = a;
this.job = n;
this.quiSuisJe = function() {
return "Mon nom est "+a+" et je suis un "+n;
}
}
var x = new Hero("Joe", "Ninja");
var y = new Hero("Jinx", "Carry AD");
console.log(x.quiSuisJe());
console.log(y.quiSuisJe());
It works. Why?