jQuery 4u propose plus de 10 raccourcis à connaitre pour améliorer votre technique de développement avec Javascript. Saurez-vous reconnaitre les formes longues des exemples suivants ?
var big = (x > 10) ? true : false;
var variable2 = variable1 || '';
var a = ["myString1", "myString2", "myString3"];
var skillSet = { 'Document language' : 'HTML5', 'Styling language' : 'CSS3', 'Javascript library' : 'jQuery', 'Other' : 'Usability and accessibility' };
var x, y, z=3;
x++; minusCount --; y*=10;
var re = new RegExp(/d+.+n{0,2}.+s+[A-Z]{2}s+d{5}/m); re.exec(searchText); //returns: ["1234 rocket str austin TX 78704"]
if (likeJavaScript)
var a; if ( !a ) { // do something... }
for(var i in allImgs)
"myString"[0]; // Returns 'm'
return ret || fum('g2g');
function x() {console.log('x')};function y() {console.log('y')};var z = 3; (z==3?x:y)(); // Short version!
Pour le premier, encore plus court : var big = x > 10
Bruno,
Concernant l’écriture de code il y a plusieurs manière de le voir.
Effectivement on peut toujours trouver la manière d’écrire du code compact, on l’a tous fait en C par exemple.
Les avantages: … ?
J’ai travaillé dans l’industrie Automobile et pour faire ‘entrer’ le code dans les calculateurs, pour le rendre le plus rapide possible aussi, il fallait compacifier le code au maximum, tout en gardant en tête l’aspect Qualité.
Qualité => Pouvoir être relu par quelqu’un de différent, (parfois soi même quelques mois plus tard).
Faire attention à la façon dont le code généré (avec une chaîne de compilation croisée, il pouvait y avoir des bugs sur des expressions C)
Concernant Javascript, le facteur de la rapidité n’est pas un problème. Les PC/téléphones/tablettes offrent de plus en plus de performance.
Par contre et c’est là où je veux en venir, javascript est permissif (faiblement typé, etc …). C’est un langage avec lequel il faut faire très attention.
Selon moi, et selon aussi par exemple Douglas crockford (le concepteur de jsLint, Json et js) il vaut mieux pour des raison de lisibilité, maintenabilité et sécurité éviter les tournures trop compactes concernant Javascript.