长手 if 在 javascript 中看起来是:
function somefunction(param){
if(typeof(param) != 'undefined'){
var somevar = param;
} else {
alert('ERROR: missing parameter in somefunction. Check your form');
return;
}
}
我的简写版本是:
function somefunction(param){
param = typeof(param) != 'undefined' ? param : function(){alert('ERROR: missing parameter in somefunction. Check your form'); return;}
}
但是它不起作用。
我怎么能?
谢谢
最佳答案
您只是声明了该函数。你必须执行它。在定义旁边添加 () ..
function somefunction(param){
param = typeof(param) != 'undefined' ?
param :
function() {
alert('ERROR: missing parameter in somefunction. Check your form');
return false;
}();
}
编辑:上面的代码在功能上与原始代码并不相同,因为函数本身不返回任何内容,也不会结束函数执行。
function somefunction(param) {
if (typeof(param) == 'undefined') {
alert('ERROR: missing parameter in somefunction. Check your form');
return false;
}
// Use param
}
关于javascript 简写 if else 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8086852/