Javascript

Un article de Haypo.

Retour à la page précédente Retour aux langages de programmation

Le javascript est un langage de script inventé par Netscape pour rendre des pages webs dynamiques. Il est aujourd'hui très répendu et existe même en dehors des sites webs (quelques programmes et jeux).

Sommaire

[modifier] Tester si une variable ou un attribut est défini

if (typeof(document.forms.natproto) != 'undefined')) ...
if (typeof(mavariable) != 'undefined')) ...

[modifier] Tableaux indexés et associatifs

[modifier] Déclaration d'un tableau indexé

Les tableaux classiques (indexés) se déclarent avec « [] ». Le premier élément est à la position zéro :

var tab_indexe = ["Victor", "Amélié", "Romuald"];
alert('Premier = '+tab_indexe[0]);

[modifier] Déclaration d'un tableau associatif

Les tableaux associatifs se déclarent avec « new Array() » :

var tab_assoc = new Array();
tab_assoc["nom"] = "Stinner";
tab_assoc["prenom"] = "Victor";
alert('Prénom = '+tab_assoc["prenom"]);

On peut déclarer un tableau associatif statique (ne pouvant être modifié) :

var tab_assoc = {"nom": "Stinner", "prenom": "Victor"};
alert('Prénom = '+tab_assoc["prenom"]);

[modifier] Parcourir un tableau indexé

for (var i=0; i<mon_tableau.length; i++)
{
   var valeur = mon_tableau[cle];
   ...
}

[modifier] Parcourir un tableau associatif (for ... in)

for (var cle in mon_tableau)
{
   var valeur = mon_tableau[cle];
   ...
}

[modifier] Autres outils pour les tableaux

  • Vrai copie d'un tableau associatif (en opposition avec une copie par référence) :
 var copie = tab.slice(0);
    ou (à tester)
 var copie = eval(tab.toSource);
  • tab.push(item1, item2, ...) : Ajouter des éléménts à la fin d'un tableau
  • tab.unshift(item1, item2, ...) : Ajouter des éléménts au début d'un tableau
  • tab.pop() : Retourne le dernier élément du tableau après l'avoir supprimé
  • tab.shift() : Retourne le premier élément du tableau après l'avoir supprimé
  • tab.sort() : Tri les éléments du tableau
  • tab.reverse() : Inverse l'ordre des éléments
  • if (3 in tab) : Vérifie si la clé 3 existe
  • delete tab[3] : Supprime la clé 3

[modifier] Insérer du JavaScript dans une page web

Directement dans la page :

<script type="text/javascript">
  ... (insérez ici votre code Javascript)
</script>

Ou depuis un fichier externe (fichier portant l'extension js) :

<script type="text/javascript" src="<url du script>"></script>

[modifier] Déclarer une fonction

function mafonction(a, b)
{
   var somme = a+b;
   alert('Somme = '+somme);
}

[modifier] Expression régulière

On peut vérifier qu'une chaîne matche une expression régulière :

var txt="123";
if (txt.match(/[0-9]+/))  {
   document.write('matche');
} else {
   document.write('non non');
}

Il existe aussi :

  • search() : var position = txt.search(/[a-z0-9]+/);
  • replace() : txt = txt.replace(/[abc]+/ig, '"$1"');
  • split() : tab = txt.split(/ +/);

Les options classiques des expressions régulières fonctionnent :

  • g : Remplace toutes les chaînes
  • i : Insensible à la casse

[modifier] Test logique

  • a && b : test a et b
  • a || b : test a ou b
  •  !a : non a

[modifier] Voir aussi

[modifier] Articles connexes

[modifier] Liens externes

  • walterzorn.com : Plusieurs outils très intéressants dont une bibliothèque JavaScript de dessine vectoriel, du glisser-déposer, et une bibliothèque DHTML.
  • Rico (openrico.org) : Bibliothèque de fonctions Javascript plutôt impressionante, en particulier ce qui touche à Ajax.
  • openjsan.org : Annuaire de codes source écrit en Javascript
  • Guide JavaScript 1.5