jet:working_with_objects_and_prototypes
Déclarer des objets en général
var today = new Date();
var tableau = new array();
var RE = new RegExp("he..o");
aussi
var my_player = { name: "José", score: 1000, rank: 1 };
// nouvelle propriété
my_player.gameType = "MEUPORG";
// nouvelle méthode
my_player.log_score = function(){
  console.log(this.score);
}

Classes

Pas de classes en js, mais :

constructeur
function Player(name, score, rank) { // majuscule signalant une "classe"
  this.name = name;
  this.score = score;
  this.rank = rank;
}
var bob = new Player("bob", 10, 2);
var gaaaah = new Player("gaaaah", 10000, 1);
prototype

Tous les objets ont une propriété prototype. Les fonctions sont des objets donc on peut utiliser ce prototype pour attacher des méthodes à l'objet.

function Player(name, score, rank) { // majuscule signalant une "classe"
  this.name = name;
  this.score = score;
  this.rank = rank;
}
Player.logName() = function {
console.log("name:", this.name):
}
var bob = new Player("bob", 10, 2);
jet/working_with_objects_and_prototypes.txt · Last modified: 2016/01/26 00:50 by leo