【发布时间】:2013-06-22 15:58:24
【问题描述】:
我一直使用以下语法来确保输入变量不是null。
function f(input){
if(input === null)
input = "";
...
}
最近发现用下面的方式来表达会比较短。
function f(input){
input = input ? input : "";
...
}
而且,我也见过这种语法。
function f(input){
input = input || "";
...
}
- 它们是否相同(不是在做什么,而是在如何他们这样做)?
- 最推荐哪个(可读性等)?
请注意,我将严格处理字符串的输入,使其要么是有效的,要么是 null(根本没有提供)。如果我想扩展保护以包括其他类型,我应该考虑哪些其他问题?
【问题讨论】:
-
另一个 -
input || (input = ""); -
@VitaliyPetrychuk 会更快吗?另外 - 我希望 return 或 *input = * 在您的建议之前。我弄错了吗?
-
我不认为这是你必须优化的代码:)