ES6——字符串,数值,布尔值以及函数参数的解构赋值

本文介绍了ES6中字符串、数值、布尔值及函数参数的解构赋值方法。通过实例展示了如何将字符串转换为类数组对象进行解构,如何处理数值与布尔值的解构赋值,并解释了为什么某些情况下会出现undefined。此外还介绍了如何利用解构赋值简化函数参数处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ES6——字符串,数值,布尔值以及函数参数的解构赋值

  1. 字符串的解构赋值
    之所以字符串能够被解构,是因为字符串被转换成了一个类数组的对象
        let [a, b, c, d, e] = 'Jisoo';
        console.log(a); //J
        console.log(b); //i
        console.log(c); //s
        console.log(d); //o
        console.log(e); //o

类数组都有length属性,因此还可以对这个属性进行解构赋值

        let {
            length: len
        } = 'jisoo';
        console.log(len);//5
  1. 数值和布尔值的解构赋值
    如果等号右边是数值或者布尔值时,会先将其转换为对象
        let {
            prop: x
        } = 123;
        console.log(x); //undefined(123被转换为对象)
        let {
            prop1: y
        } = true;
        console.log(y); //undefined(true被转换为对象)
        let {
            prop2: z
        } = undefined;//undefined不能转换为对象,所以报错
        console.log(z); //Error
  1. 函数参数的解构赋值
        function add([x, y]) {
            return x + y;
        }
        var sum = add([1, 2]);
        console.log(sum);

函数add()参数表面是一个数组,但实际上在传入参数的那一刻,数组参数就被解构成变量x和y
函数参数的解构也可以使用默认值

        function move({
            x = 0,
            y = 0
        } = {}) {
            return [x, y];
        }
        var x = move({
            x: 3,
            y: 8
        });
        console.log(x); //[3,8]
        var y = move({
            x: 3
        });
        console.log(y); //[3,0]
        var z = move({}); //
        console.log(z); //[0,0]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值