Objets en Javascript

Transcription

Objets en Javascript
Objets en Javascript
Joël Quinqueton
Dépt MIAp, UFR IV
UPV - Université Montpellier III
Différents types d'objets
• Les objets qui sont des prototypes servant à
créer d'autres objets:
– Date, String, Array
• L'objet le plus général:
– Object
• Propriétés: constructor, prototype
• Méthodes: valueOf(), toString()
• Les objets décrivant la navigation en cours:
– document, navigator, window
• Les objets définis par l'utilisateur
12/03/07
XLIN 401 Informatique de
l'Internet
2
Définir de nouveaux objets
• Cela se fait dans une fonction
• Le mot-clé "this" fait référence à l'objet en
train d'être construit.
• Exemple:
function Photo(w, h) {
this.largeur = w;
this.hauteur = h;
}
var p = new Photo(120, 150);
12/03/07
XLIN 401 Informatique de
l'Internet
3
Les objets de la navigation
•
•
•
•
•
L’objet « document »
Les objets « window », « navigator »
Accès par la syntaxe « objet.propriété »
Attributs
Méthodes
12/03/07
XLIN 401 Informatique de
l'Internet
4
L’objet « document »
• Propriétés (String):
– location
– title
– lastModified
• Méthode:
– write, writeln
– Pendant l’affichage: ajout
– Après l’affichage: remplacement
12/03/07
XLIN 401 Informatique de
l'Internet
5
L’objet navigator
• Propriétés: son nom, la langue, le
système,…
12/03/07
XLIN 401 Informatique de
l'Internet
6
L’objet « window »
• Désigne la fenêtre
• Un de ses composants est l’objet
« document »
• Méthodes alert(),…
12/03/07
XLIN 401 Informatique de
l'Internet
7
Les dates
• X = new Date();
– Par défaut, la date
et l'heure actuelles,
en millisecondes
• Nombreuses
méthodes d'accès
en lecture et en
écriture
getYear()
setYear()
getFullYear()
setFullYear()
getMonth()
setMonth()
getDay()
getDate()
setDate()
getTime()
setTime()
getHours()
setHours()
getMinutes()
– toLocaleString() (Retourne
la date au format par
getSeconds()
défaut)
– toGMTString() (Retourne
getMilliseconds()
la date à l'heure GMT)
– getTimezoneOffset()
(Retourne le décalage XLIN 401 Informatique de
12/03/07
horaire en minutes)
l'Internet
setMinutes()
setSeconds()
setMilliseconds()
8
Les tableaux
concat()
• X = new Array();
– Propriété: length
• Accès: X[i];
• La longueur est
dynamique
• Nombreuses
méthodes
join()
pop()
push()
reverse()
shift()
slice()
sort()
splice()
unshift()
12/03/07
XLIN 401 Informatique de
l'Internet
9
Les images
• Création par la
balise <img …>
• Accès par l'objet
document
• Propriétés
accessibles en
lecture et écriture
12/03/07
alt
fileSize
height
complete
id
name
src
width
XLIN 401 Informatique de
l'Internet
10
Les chaines de
caractères
charAt()
anchor()
• X = new
String("bonjour");
• Y = "bonjour";
• Z = X + Y;
• Nombreuses
méthodes de
recherche d'éléments
et de formatage
12/03/07
charCodeAt()
big()
concat()
blink()
fromCharCode()
bold()
lastIndexOf()
fixed()
match()
fontcolor()
replace()
fontsize()
slice()
italics()
split()
link()
substr()
small()
substring()
strike()
tolLowerCase()
sub()
toUpperCase()
sup()
XLIN 401 Informatique de
l'Internet
11
Les expressions régulières
• X = new
RegExp("bonjour","i");
• Y = new RegExp("[09]+","g");
• Z = /[0-9]+/g;
• Pour reconnaître un
motif dans un texte
$1
compile()
$2
exec()
$3
test()
$4
$5
$6
$7
$8
$9
12/03/07
XLIN 401 Informatique de
l'Internet
12
Les fonctions mathématiques
• L'objet Math
• Ses propriétés sont
des constantes
mathématiques;
• Ses méthodes sont
des fonctions
mathématiques
E
abs()
sin()
PI
ceil()
cos()
SQRT2
floor()
tan()
round()
asin()
min()
acos()
max()
atan()
pow()
exp()
sqrt()
log()
random()
12/03/07
XLIN 401 Informatique de
l'Internet
13
prototype
• Propriété permettant d'ajouter des propriétés
ou des méthodes à toutes les instances d'une
classe.
• classe.prototype.name = value;
– classe : nom de la classe (Object, Date, String,
Math...)
– name : nom de la propriété / méthode
– value : valeur par défaut (propriété) ou nom de
fonction (méthode)
12/03/07
XLIN 401 Informatique de
l'Internet
14
Définir une méthode
• La fonction « verlan » vue en TD
function verlan() {
var resu = "";
for (i=this.length-1; i>=0; i--) {
resu += this.charAt(i);
}
return resu;
}
String.prototype.verlan = verlan;
12/03/07
XLIN 401 Informatique de
l'Internet
15
Pour en savoir plus:
• http://www.toutjavascript.com/reference/
12/03/07
XLIN 401 Informatique de
l'Internet
16

Documents pareils