我想知道这两个脚本是否做同样的事情:
parseInt(num)?num=parseInt(num):num=str.length
和
num=parseInt(num)||str.length;
如果他们不是,我需要知道第二个做什么。
答案 0 :(得分:2)
是的,他们这样做(但第二个效率更高,因为它不必运行parseInt
两次)。
答案 1 :(得分:2)
是的,它们与后来的(短路评估)相同,是简洁的JS(或其他支持它的语言):
num = parseInt(num) || str.length;
反过来又是对此的简要说明:
if (parseInt(num)){
num = parseInt(num);
}
else {
num = str.length;
}
良好做法:
var
变量之前忘记num
关键字,否则会进入全局范围。parseInt
指定基座,例如parseInt(num, 10)
<强>读数:强>
答案 2 :(得分:1)
num = parseInt(num)?parseInt(num):str.length