Astuces et techniques avancées en JavaScript

L’équipe du projet jslibs (en anglais) a créé un wiki intéressant qui regorge d’astuces JavaScript (en anglais). Jugez-en par les exemples suivants. Certains ne fonctionnent peut-être pas dans tous les navigateurs, mais méritent qu’on s’y attarde…

Vérifier qu’un objet n’est pas vide :

function isNotEmpty(obj) {
for ( var tmp in obj )
  return true
}

Transformer l’objet arguments en tableau :

function foo() {
  Array.slice(arguments); // is ['aa',11]
}
foo('aa',11);

Le singleton est un patron de conception qui limite l’instanciation d’une classe à un seul objet. Il est utile lorsqu’un objet unique doit coordonner les actions dans l’ensemble du système :

function MySingletonClass() {

  if ( arguments.callee._singletonInstance )
    return arguments.callee._singletonInstance;
  arguments.callee._singletonInstance = this;

  this.Foo = function() {
    // ...
  }
}

var a = new MySingletonClass()
var b = MySingletonClass()
Print( a === b ); // prints: true

Définir les valeurs par défaut des arguments d’une fonction :

function foo( a, b ) {
  a = a || '123';
  b = b || 55;
  Print( a + ',' + b );
}

foo(); // prints: 123,55
foo('bar'); // prints: bar,55
foo('x', 'y'); // prints x,y

Insérer un tableau dans un autre :

var a = [1,2,3,4,5,6]
var b = ['a','b','c']
var insertIndex = 5;

Array.concat( a.splice( 0, insertIndex ), b, a );
// Result: 1,2,3,4,5,a,b,c,6

L'offre Premium arrive bientôt

Un abonnement Premium facultatif permettant de supprimer les publicités est prévu. Les abonnements ne sont pas encore disponibles.

Vous pouvez continuer à utiliser nos outils gratuits sans compte.