解构赋值
定义:种为变量赋值的新语法,一次可以为多个变量赋值。
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(长度,补充内容);