当前位置:
首页 > 技术 > JS function传递参数默认值

JS function传递参数默认值

用JS的函数function经常会遇到需要传递默认值的情况,在PHP中,函数调用默认值的方式如下:

function Discount($Params, $PreEx="USD")
{
global $cg;

foreach($Params as $i => $v) $Params[$i] = floatval($v);

return Cost($Params)*$cg['CNYto'.$PreEx] / $Params['SalePrice'.$PreEx];
}

其中,如果当$PreEx没有在调用的函数中传递值过来时,会默认赋值给$preEx值USD。

但是在JS中情况有所不同,如果像function Discount($Params, $PreEx="USD")这样子写,浏览器会直接抛出错误提示:SyntaxError: Unexpected token =

其实JS也可以传递默认值,方式有些不同,在函数内预设数可以用 arguments[i]i就是你参数的位置,第一个为0

所以在JS中,应该这样子改写:

function Discount($Params, $PreEx)
{
var $PreEx = arguments[1] || "USD";
var $ExchangeRate = eval("$CNYto"+$PreEx);
for(var $i in $Params) $Params[$i] = $Params[$i]==''?0:parseFloat($Params[$i]);
return Cost($Params)*$ExchangeRate / $Params['SalePrice'+$PreEx];
}

var $PreEx = arguments[1] || "USD";

是简写的方式,还可以用简单明了的写法:

var $PreEx = arguments[1] ? arguments[1] : "USD";

JS function传递参数默认值:等您坐沙发呢!

发表评论

您必须 [ 登录 ] 才能发表留言!