价值|| '-', 也显示 0
Value || '-', show 0 too
我有一个用例,我正在显示来自 API 的数据。如果该字段没有数据,我将显示一个连字符。在某些情况下,API returns 0 作为值,UI 仍会显示连字符。
const value = APIValue || '-'
在上面的例子中,当输入为 0 时,我们如何显示 0 而不是连字符?
如果您需要一个数字,您可以使用 isNan 或类型检查变量:
const APIValue = 0;
const value = !isNaN(APIValue) ? APIValue : '-'
console.log(value)
const APIValue = 0;
const value = typeof APIValue === "number" ? APIValue : "-";
console.log(value)
如果您只想让变量有任何值,您应该检查它是否为空,因为这也会捕获未定义的值:
const APIValue = 0;
const value = APIValue != null ? APIValue : "-";
console.log(value)
使用 null coalescing operator
或添加如下:
If(APIValue === 0)
return 0;
else
return APIValue || '-'
您可以使用三元运算符:
const value = APIValue || ((APIValue === 0) ? 0 : '-')
试试这个:
const value = (APIValue == null ? '' : APIValue.toString()) || '-';
我有一个用例,我正在显示来自 API 的数据。如果该字段没有数据,我将显示一个连字符。在某些情况下,API returns 0 作为值,UI 仍会显示连字符。
const value = APIValue || '-'
在上面的例子中,当输入为 0 时,我们如何显示 0 而不是连字符?
如果您需要一个数字,您可以使用 isNan 或类型检查变量:
const APIValue = 0;
const value = !isNaN(APIValue) ? APIValue : '-'
console.log(value)
const APIValue = 0;
const value = typeof APIValue === "number" ? APIValue : "-";
console.log(value)
如果您只想让变量有任何值,您应该检查它是否为空,因为这也会捕获未定义的值:
const APIValue = 0;
const value = APIValue != null ? APIValue : "-";
console.log(value)
使用 null coalescing operator
或添加如下:
If(APIValue === 0)
return 0;
else
return APIValue || '-'
您可以使用三元运算符:
const value = APIValue || ((APIValue === 0) ? 0 : '-')
试试这个:
const value = (APIValue == null ? '' : APIValue.toString()) || '-';