2.1 Variables et douleur
Commençons par le plus intéressant. JavaScript a des variables, mais ces variables n'ont pas de type. N'importe quelle variable peut recevoir absolument n'importe quelle valeur. Semble inoffensif ou même pratique jusqu'à ce que vous ayez besoin des types.
Le mot clé sert à déclarer une variable var
:
var name;
var name = value;
Exemples de travail avec des variables en JavaScript :
var a = 10, b = 20;
var c = a*a + b*b;
var s = "Diagonal equals:";
console.log( s + Math.sqrt(c));
Code génial et clair, n'est-ce pas? C'est peut-être la dernière fois de votre vie que vous voyez du code JavaScript beau et compréhensible. Souvenez-vous de ce moment :)
2.2 Taper en JavaScript
Comme mentionné ci-dessus, les variables du langage JavaScript n'ont pas de type. Mais les valeurs des variables ont des types. Voici les 5 types les plus courants en JavaScript :
# | Taper | Exemple | Description |
---|---|---|---|
1 | nombre |
|
Contient n'importe quel nombre |
2 | Chaîne |
|
Contient une chaîne |
3 | booléen |
|
Contient vrai ou faux |
4 | déployer |
|
Contient un tableau d'éléments |
5 | Date |
|
Contient la date |
6 | Objet |
|
Contient un objet composé de paires clé, valeur. Quelque chose de similaire à HashMap en Java |
7 | fonction |
|
Fonction |
Le mot-clé typeof est utilisé pour déterminer le type d'un objet, par exemple :
var s = "134";
var x = (typeof s == "String") ? s*1 : s;
2.3 Fonctions et retours
Et bien sûr, JavaScript a des fonctions. Il n'y a pas de classes, donc les fonctions peuvent être déclarées n'importe où dans le code. Même dans d'autres fonctions. Le format général est :
function name(a, b, c) {
// function code
return result;
}
La fonction n'a pas de type. Pourquoi, s'il n'y a pas de contrôle de compatibilité de type dans le langage lui-même ? Des paramètres de fonction peuvent également être manquants. Il en va de même pour la commande return, qui renvoie une valeur.
Lors de l'appel d'une fonction, vous pouvez passer n'importe quel nombre de paramètres de n'importe quel type . L'excédent sera jeté, les manquants seront égaux null
.
Exemples de fonctions :
function getValue(name)
{
return this[name];
}
function setValue(name, value)
{
this[name] = value;
}
2.4 Tableaux en JavaScript
Les tableaux en JavaScript sont très similaires aux tableaux en Java. Exemples:
var array = [1, 2, 3, 4, 5];
array[3] = array[2];
console.log (array[0]);
Ils peuvent avoir des valeurs de n'importe quel type, même d'autres tableaux :
var array = [1, "Hello", 3.14, [4, 5] ];
array[3] = array[2];
console.log (array[0]);
De plus, les tableaux se comportent également comme des collections - vous pouvez leur ajouter dynamiquement des éléments :
var array = [];
array.push(100);
array.push(101);
array.push(102);
array[1] = array[2];
console.log (array[0]);
2.5 Objets en JavaScript
Les objets en JavaScript sont très similaires à HashMap en Java : ils contiennent des paires clé-valeur. Exemple:
var obj = {
name: "Bill Gates",
age: 67,
company: "Microsoft"
};
console.log (obj.age);
Les champs d'objet sont accessibles de deux manières différentes :
var x = obj.age;
var x = obj["age"];
Comme avec HashMap, les champs peuvent être créés et supprimés. Exemple:
var obj = {};
obj.name = "Bill Gates";
obj.age = 67;
obj.company = "Microsoft";
delete obj.age; //remove field