Javascript 如何在参数中提供默认值?

Javascript 如何在参数中提供默认值?,javascript,Javascript,函数x({name='abc'}){ console.log(名称); } x({name:null})null是故意的,而undefined不是故意的 换句话说,提供null意味着该值为null,因此不会将“abc”设置为默认值 这应该可以做到: 函数x({name}){ !(!!名称)和&(名称='abc'); console.log(名称); } x({name:null})null是故意的,而undefined不是故意的 换句话说,提供null意味着该值为null,因此不会将“abc”

函数x({name='abc'}){
console.log(名称);
}

x({name:null})
null
是故意的,而
undefined
不是故意的

换句话说,提供null意味着该值为
null
,因此不会将“abc”设置为默认值

这应该可以做到:

函数x({name}){
!(!!名称)和&(名称='abc');
console.log(名称);
}

x({name:null})
null
是故意的,而
undefined
不是故意的

换句话说,提供null意味着该值为
null
,因此不会将“abc”设置为默认值

这应该可以做到:

函数x({name}){
!(!!名称)和&(名称='abc');
console.log(名称);
}

x({name:null})
默认参数值仅在值为
未定义时应用。你必须自己实现这样的逻辑

函数x({name}){
如果(!name){
名称='abc';
}
console.log(名称);
}

x({name:null})
默认参数值仅在值为
未定义时应用。你必须自己实现这样的逻辑

函数x({name}){
如果(!name){
名称='abc';
}
console.log(名称);
}

x({name:null})
当值为null时,重新定义如何适合您

函数x({name}){
名称=名称?名称:“abc”;
console.log(名称);
}
x({name:null});

x({name:'asd'})当值为空时,重新定义如何适合您

函数x({name}){
名称=名称?名称:“abc”;
console.log(名称);
}
x({name:null});

x({name:'asd'})换句话说,参数的默认值仅用于未定义的值,而不是错误的值?可以说,您也可以有意地传递
未定义的
)@菲利克斯克林:真的!现在参数的默认值似乎并没有那个么有用哈!换句话说,参数的默认值仅用于未定义的值,而不是错误的值?可以说,您也可以有意地传递
undefined
)@菲利克斯克林:真的!现在参数的默认值似乎并没有那个么有用哈!那么,如果
name
包含值
false
x({name:false})
),会发生什么ễn:没错,这意味着我们不能真正依赖
!name
但是要显式地处理特定的false值,那么如果
name
包含值
false
x({name:false})
),会发生什么情况呢?@T–nNguyễn:没错,这意味着我们不能真正依赖
!name
但是要显式地处理特定的假值,而不是使用
name=name | | abc'
?只要名称是错误的,它就会工作,尽管它也会与
'
一起工作,这可能不是故意的。那么
name=name | | abc'
呢?只要名称是错误的,它就可以工作,尽管它也可以与
'
一起工作,这可能是无意的。