使用默认参数解构 falsy 和 null

2024-04-29

我试图了解如何使用默认参数来解构虚假值和空值。以下是我运行过的一些示例:

// #1
const person = { email: '[email protected] /cdn-cgi/l/email-protection' }
const { email = '' } = person
// email is '[email protected] /cdn-cgi/l/email-protection'

// #2
const person = { email: '' }
const { email = '' } = person
// email is ''

// #3
const person = { email: false }
const { email = '' } = person
// email is boolean false.  why?!

// #4
const person = { email: null }
const { email = '' } = person
// email is null.  why?!

我是否可以编写一个快捷方式来解构 #3 和 #4 的假值和空值,以便我的电子邮件是一个空字符串?


Only undefined将导致默认初始化程序在解构和函数参数目标中运行。如果您想将所有错误值恢复为默认值,请使用旧的||操作员 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_OR反而:

const email = person.email || '';

或者定位一个可变变量并使用逻辑或赋值 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_OR_assignment然后:

let { email } = person;
email ||= '';
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用默认参数解构 falsy 和 null 的相关文章

随机推荐