老师,我想问这个null值怎么不生效,类比数组的解构赋值,这种情况不能被赋值
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<script type="text/javascript">
function test({
name,
age=null,
sex=undefined,
}){
document.write(name+"</br>"+age+"</br>"+sex)
}
test({
name:"jim",
age:"22",
// sex:"man",
})
</script>
</body>
</html>
0
收起
正在回答
2回答
1、数组解构赋值:数组解构可以指定默认值,数组成员的值不严格等于undefined,默认值不生效(null的话相应值依然为null)
2、对象解构赋值:对象解构可以指定默认值,生效条件是对象属性值严格等于undefined,null不会生效,解构失败值为undefined
原因是ES6内部使用严格相等运算符(===),判断一个位置是否有值。所以,如果一个数组成员不严格等于undefined,默认值是不会生效的
上面代码中,如果一个数组成员是null,默认值就不会生效,因为null不严格等于undefined
自己总结的,互相学习哈!
热门框架Vue开发WebApp 18版
- 参与学习 人
- 提交作业 209 份
- 解答问题 3299 个
本路径是通过ES6基础知识、运用Zepto、Swiper、fullPag等移动端常用工具包、以及当下流行框架Vue,结合多个实战案例,还原真实开发场景,最终实现手机端购物商城网页开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星