PDA

View Full Version : optional parameter


jeorg
11-14-2002, 07:04 PM
I have this function
---------------------------------------------------

function BuildIcone(mImg, mClass)
{
if (mClass !="")
{
return "<img src='" + mImg + ".gif' class='" + mClass + "' alt='' />";
}
else
{
return "<img src='" + mImg + ".gif' class='imgMenuG' alt='' />";
}
}

-----------------------------------------------
I can call it in that way
BuildIcone("car","imgMenuG")

but I want an optional parameter

then if I do

BuildIcone("car")

the second value must be imgMenuG

and it doesn't work

why ?

thank you

Garadon
11-14-2002, 07:35 PM
Cant Remember if Java script supports this but try this.

function BuildIcone(mImg, mClass)
{
return "<img src='" + mImg + ".gif' class='" + mClass + "' alt='' />";
}

function BuildIcone(mImg)
{
return "<img src='" + mImg + ".gif' class='imgMenuG' alt='' />";
}

x_goose_x
11-14-2002, 07:35 PM
instead of using:

BuildIcone("car");

use:

BuildIcone("car","");

x_goose_x
11-14-2002, 07:38 PM
the two functions like Garadon suggested would cause an error.

you might also want to try using:

if (mClass.length >= 1)

jeorg
11-14-2002, 08:00 PM
but you are really obliged to do "car",""
you cannot have optional parameter in javascript ?

and if is emptyor null you return the optional value

Like Garadon it works in VB net and it is very practicle, to avoid empty optional parameters

glenngv
11-15-2002, 02:55 AM
function BuildIcone(mImg, mClass)
{
if (mClass !="" && mClass!=null && typeof mClass!="undefined")
{
return "<img src='" + mImg + ".gif' class='" + mClass + "' alt='' />";
}
else
{
return "<img src='" + mImg + ".gif' class='imgMenuG' alt='' />";
}
}


these will all produce the same result:

BuildIcone("car","imgMenuG");
BuildIcone("car");
BuildIcone("car","");
BuildIcone("car",null)

jeorg
11-15-2002, 09:54 AM
thank you very much

glenngv
11-15-2002, 10:12 AM
welcome. :)
actually, you can optimize the code like this:

function BuildIcone(mImg, mClass)
{
mClass = (mClass !="" && mClass!=null && typeof mClass!="undefined") ? mClass:'imgMenuG';
return "<img src='" + mImg + ".gif' class='" + mClass + "' alt='' />";
}