我在这里找到了一个类似这样的问题,但那是C#。
我需要一个用于javascript。
我不想输入最后一个值“NA”,因为如果代码编程正确,它永远不会被调用。是否有这样的工作,所以我不必输入任何东西,我的意思甚至不是“”。
(col_1 === 0)? 0 :(col_1 >= 1)? col_1-1:"NA";
答案 0 :(得分:0)
您可以返回null
或undefined
,但不能返回任何内容
答案 1 :(得分:0)
可能是这样的:
(col_1 <= 0) ? 0 : (col_1 - 1);
答案 2 :(得分:0)
虽然不清楚,这个问题的真正目的是建议使用持续检查零或大于或等于一。
如果没有条件result
,则此提案不会更改true
。
if (col_1 === 0) {
result = 0;
}
if (col_1 >= 1) {
result = col_1 - 1;
}
答案 3 :(得分:0)
如何不从最后一个三元运算符返回值?
不,你不能,三元运算符的最后一部分是必需的。要实现这一目标,您需要if-else
个阻止。
if (col_1 === 0) {
result = 0;
} else if (col_1 >= 1) {
result = col_1 - 1;
}
另一种方法是使用逻辑运算符&&
就像我说的那样,最后一部分是必需的
(col_1 === 0) ? 0 : (col_1 >= 1 && col_1 - 1);
var col_1 = 0;
var result = (col_1 === 0) ? 0 : (col_1 >= 1 && col_1 - 1);
console.log(result);
col_1 = 5;
result = (col_1 === 0) ? 0 : (col_1 >= 1 && col_1 - 1);
console.log(result);
col_1 = 3;
result = (col_1 === 0) ? 0 : (col_1 >= 1 && col_1 - 1);
console.log(result);
col_1 = -1;
result = (col_1 === 0) ? 0 : (col_1 >= 1 && col_1 - 1);
// This case will always return false because 'col_1 < 0'
// Here you can check for that value
console.log("You need to check this situation: ", result);
.as-console-wrapper { max-height: 100% !important; top: 0; }