OVH Cloud OVH Cloud

Fonction et paramètres par défaut

6 réponses
Avatar
\(¯`·..Yttrium ...·´¯\)
Bjr,
En JS, est il possible de créer une fonction en affectant des valeurs
par défaut à certains de ses paramètres , comme c'est le cas dans
beaucoup d'aurtres langages ?

Du type :

function toto (param1="oui", param2="paris")
{
...
}

Ainsi, un appel à cette fonction sans passage de paramètres appellera
la fonction avec ses valeurs par défaut.
Si oui, quelle est la syntaxe, si non, comment faire ?
D'avance Merci.
Salutations.

--
(¯`·..Yttrium ...·´¯)
Pour me répondre en privé: Passez un coup de balai

6 réponses

Avatar
Thibault TAILLANDIER
Bjr,
En JS, est il possible de créer une fonction en affectant des valeurs
par défaut à certains de ses paramètres , comme c'est le cas dans
beaucoup d'aurtres langages ?


Bonjour
Pas a ma connaissance, mais je serais ravi de savoir si c'etait
effectivement possible.


Du type :

function toto (param1="oui", param2="paris")
{
...
}

Ainsi, un appel à cette fonction sans passage de paramètres appellera la
fonction avec ses valeurs par défaut.
Si oui, quelle est la syntaxe, si non, comment faire ?


faire plusieurs fonctions :
function toto (param1, param2) {}
function toto0 () { return toto("oui","paris"); }
function toto1 (param1) { return toto(param1,"paris"); }

C'est pas super propre, mais ca fait ce que tu voulais sans réécriture
de code.

D'avance Merci.
Salutations.



De rien,
Bye
--
Thibault

Avatar
Rue des Prairies
Bjr,
En JS, est il possible de créer une fonction en affectant des valeurs
par défaut à certains de ses paramètres , comme c'est le cas dans
beaucoup d'aurtres langages ?

Du type :

function toto (param1="oui", param2="paris")
{
...
}

Ainsi, un appel à cette fonction sans passage de paramètres appellera la
fonction avec ses valeurs par défaut.
Si oui, quelle est la syntaxe, si non, comment faire ?
D'avance Merci.
Salutations.

Bonjour,


function fonction(par1,par2) {
par1 = par1 != '' ? par1 : "defaut par1";
par2 = par2 != '' ? par2 : "defaut par2";
alert ("par1="+par1+"npar2="+par2);
}

Olivier.

Avatar
BMR
Ou avec les arguments variables :

function toto() {
if (arguments.length) {
var param1 = arguments[0];
var param2 = (arguments.length > 1) ? arguments[1] : "paris";
}
else {
var param1 = "oui";
var param2 = "paris";
}
...
}

toto("non"); // param1="non", param2="paris"

BMR

Bjr,
En JS, est il possible de créer une fonction en affectant des valeurs
par défaut à certains de ses paramètres , comme c'est le cas dans
beaucoup d'aurtres langages ?

Du type :

function toto (param1="oui", param2="paris")
{
...
}

Ainsi, un appel à cette fonction sans passage de paramètres appellera la
fonction avec ses valeurs par défaut.
Si oui, quelle est la syntaxe, si non, comment faire ?
D'avance Merci.
Salutations.



Avatar
Dr John Stockton
JRS: In article <422c2dea$0$19315$, dated Mon,
7 Mar 2005 11:33:08, seen in news:fr.comp.lang.javascript, Rue des
Prairies posted :

En JS, est il possible de créer une fonction en affectant des valeurs
par défaut à certains de ses paramètres , comme c'est le cas dans
beaucoup d'aurtres langages ?

Ainsi, un appel à cette fonction sans passage de paramètres appellera la
fonction avec ses valeurs par défaut.


Bonjour,

function fonction(par1,par2) {
par1 = par1 != '' ? par1 : "defaut par1";
par2 = par2 != '' ? par2 : "defaut par2";
alert ("par1="+par1+"npar2="+par2);
}


Bonjour aussi.

function fonction(par1, par2) { var U
par1 = par1 || "defaut par1"
// par1 ||= "defaut par1"; // ca ne va pas, helas !
par2 = par2!=U ? par2 : "defaut par2"
return "par1=" + par1 + " par2=" + par2 }

N.B. Ici, parametre 1 en '' 0 false donne le defaut. Ce n'est pas
le cas avec parametre 2; mais reflechez a var X ; fonction(X) ; .

Lisez ci-dessous !

--
© John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v4.00 IE 4 ©
<URL:http://www.jibbering.com/faq/> JL/RC: FAQ of news:comp.lang.javascript
<URL:http://www.merlyn.demon.co.uk/js-index.htm> jscr maths, dates, sources.
<URL:http://www.merlyn.demon.co.uk/> TP/BP/Delphi/jscr/&c, FAQ items, links.


Avatar
YD
Bonjour aussi.


Bonjour, et ravi de vous lire ici en français !

function fonction(par1, par2) { var U
par1 = par1 || "defaut par1"
// par1 ||= "defaut par1"; // ca ne va pas, helas !
par2 = par2!=U ? par2 : "defaut par2"
return "par1=" + par1 + " par2=" + par2 }

N.B. Ici, parametre 1 en '' 0 false donne le defaut. Ce n'est pas
le cas avec parametre 2; mais reflechez a var X ; fonction(X) ; .


2 questions :

1. Plutôt que
var U
par2 = par2 != U ? par2 : "defaut par2"
pourquoi ne pas écrire
par2 = par2 != null ? par2 : "defaut par2"

2. Pourquoi n'utilisez-vous pas le point-virgule (semicolon) à la fin
des instructions ?

--
Y.D.

Avatar
Dr John Stockton
JRS: In article <422f6875$0$16322$, dated Wed, 9
Mar 2005 22:21:02, seen in news:fr.comp.lang.javascript, YD <yd-
posted :
Bonjour aussi.


Bonjour, et ravi de vous lire ici en français !

function fonction(par1, par2) { var U
par1 = par1 || "defaut par1"
// par1 ||= "defaut par1"; // ca ne va pas, helas !
par2 = par2!=U ? par2 : "defaut par2"
return "par1=" + par1 + " par2=" + par2 }

N.B. Ici, parametre 1 en '' 0 false donne le defaut. Ce n'est pas
le cas avec parametre 2; mais reflechez a var X ; fonction(X) ; .


2 questions :

1. Plutôt que
var U
par2 = par2 != U ? par2 : "defaut par2"
pourquoi ne pas écrire
par2 = par2 != null ? par2 : "defaut par2"


Pourquoi pas? Ca va aussi. En effet, je l'utilise maintenant en
<URL:http://www.merlyn.demon.co.uk/weekinfo.htm#Calc>, oeuvre
d'aujourd'hui qu'il faut mettre a l'epreuve - aujourd'hui et demain :-(.

2. Pourquoi n'utilisez-vous pas le point-virgule (semicolon) à la fin
des instructions ?


Je n'aime pas les caracteres superflus.

--
© John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v4.00 MIME. ©
<URL:http://www.merlyn.demon.co.uk/> TP/BP/Delphi/&c., FAQqy topics & links;
<URL:http://www.merlyn.demon.co.uk/clpb-faq.txt> RAH Prins : c.l.p.b mFAQ;
<URL:ftp://garbo.uwasa.fi/pc/link/tsfaqp.zip> Timo Salmi's Turbo Pascal FAQ.