Je me retrouve constamment à passer des valeurs de configuration à des fonctions qui y accèdent de cette manière :
var arg1 = 'test1';
if(isUndefined(config.args.arg1)){
arg1 = config.args.arg1;
}
var arg2 = 'param2';
if(isUndefined(config.args.arg2)){
arg2 = config.args.arg2;
}
var arg3 = '123';
if(isUndefined(config.args.arg3)){
arg3 = config.args.arg3;
}
où je les utilise plus tard comme ceci :
var url = '<some-url>?id='+arg1+'&='+arg2 +'=' + arg3;
Est-ce que jQuery/ExtJS ou tout autre framework fournit une solution pour accéder à des variables comme celle-ci de manière simple, et leur donner une valeur par défaut ?
Quelque chose comme :
getValueOfObject(config,'args.arg3','<default>');
Ou existe-t-il une solution standard pour cela ?
NOTE :
J'ai également pensé à un modèle courant où l'on trouve des valeurs par défaut
var defaults = {
args: {
args1: ....
}
...
}
et de procéder à une fusion d'objets.
Puis encodage de l'objet en une chaîne de caractères param. Mais comme vous pouvez le voir, l'objet valeurs contiennent aussi parfois des noms de paramètres.