【发布时间】:2016-10-01 14:56:35
【问题描述】:
我正在尝试使用 Javascript 中的简写 if 语句来确定我的参数之一是否为负数,如果是,我想将其更改为特定值。这是我的代码:
var findDigit = function(num, nth){
nth = nth < 0 ? nth === -1: nth;
}
我想问的是nth是否小于0,然后将nth改为-1,如果不小于0,什么都不做,或者保持nth 就是这样。当我控制台记录第 n 个参数时,我得到“假”。
我在其他时候也遇到过这个问题。所以我想我要问的是,你如何写一个没有“else”部分的速记if语句?如果 if 语句为 true,我希望它运行一段代码,但如果它为 false,我不希望它执行任何操作。谢谢!
【问题讨论】:
-
您的意思可能只是
-1而不是nth === -1。 -
你在if部分使用了相等运算符,你只需要返回-1
var findDigit = function(num, nth){ nth = nth < 0 ? -1: nth; } -
你有一个赋值语句。
?的结果分配给nth。如果nth是否定的,你说?的结果是nth === -1,它可能是真或假,但绝不是-1。?不是if语句的简写。这是一个表达式。 -
检查你没有在你的函数中使用
num参数...它应该被删除
标签: javascript if-statement arguments conditional-operator