gpt4 book ai didi

javascript - val?.toLocaleString() 和使用 if 语句检查 undefined 有什么区别

转载 作者:行者123 更新时间:2023-12-05 09:26:29 26 4
gpt4 key购买 nike

我有这个:

return '£' + val?.toLocaleString();

检查 val 是否有值,但是我不确定这与以下内容相比有多安全:

if(val) {
return '£' + val.toLocaleString();
}
return val

有人可以帮我分析一下这里的区别是什么吗?如果是这样的话,为什么一个更好?

最佳答案

第一个,如果 valundefinednull,它将 val 的值与 连接起来>未定义

function format(val) {
return '£' + val?.toLocaleString();
}

console.log(format())
console.log(format(null))
console.log(format(3))

第二个只会在 val 为真值时进行连接,否则将按原样返回 val

请记住,零是一个虚假值。

function format(val) {
if(val) {
return '£' + val.toLocaleString();
}
return val
}

console.log(format())
console.log(format(0))
console.log(format(3))

关于javascript - val?.toLocaleString() 和使用 if 语句检查 undefined 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73944715/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com