Javascript can be misleading but is extremely powerful. Worse, it is extremely and use on almost all new connected device. So it is time to grab the best of it.
2. POURQUOI TANT DE HAINE
Le DOM
Ca ressemble à mon langage mais ça marche pas pareil
C'est illisible
C'est plein de bugs
3. PETIT APERÇU
(JUSQUE LÀ, TOUT VA BIEN)
var aVar = true;
aVar = 71;
var anObject = {name:'john', age:25};
var inc = function(a){return a+1};
var anArray = [aVar, 50, anObject, inc];
anObject.increment = inc;
4. LA PROGRAMMATION FONCTIONNELLE
FONCTIONS DE PREMIER ORDRE
Une fonction est un objet
FONCTIONS D'ORDRE SUPÉRIEUR
Une fonction peut prendre en paramètres d'autres fonctions
et avoir pour valeur de retour une fonction
5. WHAT'S THE ???
'' == '0'// ?
'0' == ''// ?
typeof null // ?
parseInt("08"); // ?
Vous DEVREZ de toute façon connaître les pièges
JSLint et JSHint peuvent vous aider
6. LES CONSTANTES
const aConst = 71; // oui, mais
aConst = 34; // pas d'exception !!
var MY_CONST = 12; // c'est mieux
MY_CONST = 55; // hum, ça passe...
//... mais l'erreur est facile à voir
Respectez les standards
JSLint et JSHint peuvent vous aider
7. LES DATES
var date = new Date(); // maintenant
date.getYear();
date.getDate();
date.getMonth();
Bref : à éviter. Utilisez les librairies.
8. MANIPULER DES FICELLES
var str = "THE blabla";
str = str.toLowerCase();
str.indexOf("the") === 0; // startsWith
str.replace(/bla/g, 'blu'); // replaceAll
Bref : A vous de voir. On peut contourner le manque de
lisibilité.