Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 价值| |和#x27-';,也显示0_Javascript_Operators - Fatal编程技术网

Javascript 价值| |和#x27-';,也显示0

Javascript 价值| |和#x27-';,也显示0,javascript,operators,Javascript,Operators,我有一个用例,显示来自API的数据。如果没有该字段的数据,我将显示一个连字符。在API返回0作为值的某些情况下,UI仍会显示连字符 const value = APIValue || '-' 在上述情况下,当输入为0时,如何显示0而不是连字符?如果需要数字,可以使用isNan或类型检查变量: const APIValue=0; 常量值=!伊斯南(APIValue)?APIValue:'-' console.log(value)使用空合并运算符或添加以下运算符(如果类似): If(APIVal

我有一个用例,显示来自API的数据。如果没有该字段的数据,我将显示一个连字符。在API返回0作为值的某些情况下,UI仍会显示连字符

const value = APIValue || '-'

在上述情况下,当输入为0时,如何显示0而不是连字符?

如果需要数字,可以使用isNan或类型检查变量:

const APIValue=0;
常量值=!伊斯南(APIValue)?APIValue:'-'

console.log(value)
使用
空合并运算符
或添加以下运算符(如果类似):

If(APIValue === 0)
     return 0;
else
     return APIValue || '-'

可以使用三元运算符:

const value = APIValue || ((APIValue === 0) ? 0 : '-')
试试这个:

const value = (APIValue == null ? '' : APIValue.toString()) || '-';

使用实际条件或使用空聚结运算符
而不是
|
。我推荐后者。这能回答你的问题吗?您可以从该api接收什么类型的值?@VLAZ,0?“True':“False”将始终返回False。@visizky但
typeof value==“number”?值:“-”
没有。正如我所说,使用一个实际的条件——这不是测试值的真实性。