js高级(解构赋值,构造函数)

解构赋值

定义:种为变量赋值的新语法,一次可以为多个变量赋值。
1… 数组解构
语法:let [变量的集合] = [正常的数组]
会按顺序进行赋值
在这里插入图片描述
数组解构的特点:
1-1… 左边的变量名与右边的数组单元【一一对应】
在这里插入图片描述
1-2… 左边数量大于右边(变量名多,数组单元少),变量名会存在没有被赋值的情况,就是undefined
在这里插入图片描述
1-3… 右边数量大于左边(变量名少,数组单元多)
在这里插入图片描述
1-4… 结构赋值的默认值
在这里插入图片描述

2… 对象解构
语法: let {此处是变量名} = {正常的对象}
在这里插入图片描述

对象解构的特点
2-1… 对象解构要求变量名和属性名要对应在这里插入图片描述
2-2… 左右不一致的情况,对象名对应就可以,没有前后顺序
在这里插入图片描述
2-3… 对象解构的默认值
在这里插入图片描述
2-4:… 对象解构的完整写法
语法 let {属性名:变量名,属性名:变量名}={正常的对象}
在这里插入图片描述

构造函数

定义:构造函数是专门用于创建对象的函数,如果一个函数使用new 关键字调用,那么这个函数就是构造函数。
在这里插入图片描述
1… 构造函数 Object
定义:Object 是内置的构造函数,用于创建普通对象。
1-1… Object.keys() 将某个对象的所有属性单独的取出来放到一个数组中
在这里插入图片描述
1-2… Object.values() 将某个对象的所有属性值单独的取出来放到一个数组中
1-3… Object.assign()可以创建一个新对象,或者合并多个对象
在这里插入图片描述
2… Array
定义:Array 是内置的构造函数,用于创建数组。
注:数组并不是一种数据类型,数组是对象类型的数据!!!
在这里插入图片描述
21… 变量名.forEach() 用于遍历数组,替代for 循环
在这里插入图片描述
2-2… 变量名.filter ()过滤数组单元值,生成新数组
在这里插入图片描述
2-3… 变量名.join() 数组单元素拼接成了符串
在这里插入图片描述2-4… 变量名.concat() 合并两个数组,生成新数组
在这里插入图片描述
2-5… 变量名.indexOf() 检索数组单元值
在这里插入图片描述
2-6… 变量名.reverse ()反转数组
在这里插入图片描述
2-7… 变量名.from() 伪数组转成数组
在这里插入图片描述
2-8… 变量名.some() 查找数组中【是否】有【部分】单元满足【某个条件】返回值为true/false
满足一个条件就可以(true)
在这里插入图片描述
2-9… 变量名.every() 查找数组中【是否】有【全部】单元满足【某个条件】返回值为true/false
满足全部条件(true)

在这里插入图片描述
2-10… 变量名.map() 对原数组进行遍历,然后生成一个新数组
在这里插入图片描述
2-11… 变量名.sort()对原数组进行简单排序(正序和倒序)
在这里插入图片描述
3… String字符串相关方法
3-1… indexOf 在一个字符串查找另一个字符串,找到了返回索引值,找不着为 -1
语法格式:字符串.indexOf(另一个字符串)
在这里插入图片描述
3-2…split 将字符串拆分成【数组】
语法格式:字符串.split(分隔符号);
在这里插入图片描述
3-3… slice 截取字符串的一部分
语法格式:字符串.slice(起始索引,结束索引);
在这里插入图片描述
3-4… subString 截取字符串的一部分,但是索引值不能是负数
语法格式:字符串.slice(起始索引,结束索引);
在这里插入图片描述
3-5… toUpperCase 将英文字母改成大写形式
语法格式:字符串.toUpperCase();
在这里插入图片描述
3-6… toLowerCase 将英文字母改成小写形式
语法格式: 字符串.toLowerCase ();
在这里插入图片描述

3-7… startsWith 是否以某个字符开头
语法格式:字符串.startsWith (‘’);
在这里插入图片描述

3-8… endsWith 是否以某个字符结尾
语法格式:字符串.endsWith (‘’);
在这里插入图片描述
3-9… padStart 输出固定位数的字符串,位数不够时自动补充在前
语法格式:字符串.padStart (长度,补充内容);
在这里插入图片描述
3-10… padEnd 输出固定位数的字符串,位数不够时自动补充在后
语法格式:字符串.padEnd(长度,补充内容);
在这里插入图片描述

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
赋值构造函数(Assignment Constructor)是在C++中一个特殊的构造函数。当一个对象已经被创建后,我们可以通过赋值操作符(=)将另一个已存在的对象的值赋给它。赋值构造函数被用来定义这个赋值操作符的行为。 赋值构造函数的定义形式和普通的构造函数类似,但是它只有一个参数,即对同类对象的引用。通常,赋值构造函数的参数是一个const引用,因为我们只需要读取被赋值对象的值而不需要修改它。通过这个参数,我们可以在赋值构造函数内部访问和复制被引用对象的成员。 在编写一个赋值构造函数时,我们需要遵循三个重要的规则: 1. 分配内存:如果新对象需要通过动态内存分配来存储数据,我们需要在赋值构造函数中显式地进行内存分配。 2. 复制数据:赋值构造函数应该将被引用对象的数据复制给新对象的成员变量。这可以通过逐个成员变量的赋值操作完成。 3. 避免资源泄漏:如果新对象在赋值之前已经分配了内存或者占用了其他外部资源,我们需要在复制数据之前释放这些资源,以避免资源泄漏。 赋值构造函数通常会在对象赋值时自动调用,但我们也可以手动显式地调用赋值构造函数来完成赋值操作。 总结起来,赋值构造函数为我们提供了一种在对象赋值时进行自定义操作的方式。通过定义赋值构造函数,我们可以确保对象在赋值时能够正确地复制数据,并处理内存和资源的释放,从而提高代码的可读性和可维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郑钱钱吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值