我正在尝试使用javascript?:syntax。
重写下面的语句if(type of someVariable !="undefined"){
someFunction(someVariable);
}else{}
这是我目前的尝试,它导致语法错误
typeof someVariable != "undefined" ? someFunction(someVariable) : ;
如果有人能说出我遇到了什么问题,我会很感激。欢迎任何关于防御性计划最佳实践的随附提示。
答案 0 :(得分:5)
?:style(需要:
两侧的表达式):
typeof(someVariable) != 'undefined' ? someFunction : null;
忍者式:
someVariable !== undefined && someFunction(someVariable);
[编辑:我无法发誓noop
是Javascript中的一个东西,但显然我错了。切换到null
]
答案 1 :(得分:0)
看起来应该是这样的。
someVariable != undefined ? someFunction(someVariable):someOtherfunction(someOtherVarialbe);
如果您不想要其他声明并希望它在单行中,您可以这样做:
if(someVariable != undefined){someFunction(someVariable);}
答案 2 :(得分:0)
即使三元操作控制程序流程,我也只在赋值操作或从函数返回值时使用它。
检查一下: Benefits of using the conditional ?: (ternary) operator