字符串的新增方法:
- str.startsWith: 判断是否用指定字符串开头
参数1 : 指定字符串
参数2 : 指定的开始位置 (从1开始)
str.startsWith("qb",3)
- str.endWith: 判断是否用指定字符串结尾(参数与startswith相同)
str.endsWith("学习",3)
- repeat: 将指定字符串重复指定次数
str.repeat(3)
- 模板字符串
let name = ()=>{
let n = "花花";
return n;
};
let age = "16";
let furit = "香蕉";
txt.textContent = `我叫${name()},今年${age>13?"保密":age}岁,喜欢的水果是${school}`;
数组的新增方法
数组的新增方法都是构造函数的方法,仅能通过Array来调用,不能通过数组对象的方法,即函数名来调用
- Array.from: 将类数组转换为数组形式
类数组: 有下标,有length, 但是无法使用数组的方法
参数1: 需要转化的类数组
参数2; 处理的方式(可选的)
参数3: 函数执行时this的指向(可选)li = Array.from(lis,(item,index)=>{ item.textContent = "列表"; console.log(index); });
- Array.map( ): 节后一个数组并将其按照指定需求处理后返回,该数组为新的数组
li.map((item)=>item);
- Array.isArray( ): 判断该数据是否为数组
Array.isArray(li)
- Array.of( ): 将数据组成一个新的数组(新的数组会覆盖原有的数组)
li = Array.of("a","b")
- find( ): 返回第一个满足条件的值
arr = arr.find(item=>item>3)
- findIndex( ): 返回第一个满足条件的值的索引
let a = arr.findIndex(3)
- fill( ): 向指定数组填充指定的数据覆盖原有数据(覆盖的范围可以控制,默认是全部)
参数1:用来填充数组元素的值(包头不包尾)
参数2:其实索引值(默认为0,即从头开始)
参数3:终止索引
arr = arr.fill("action",1,4);
- includes( ): 判断数组是否包含指定的值
参数1:指定的值
参数2:指定位置(从指定位置开始查找)
arr.includes("a",1);
数组的扁平化
数组的扁平化并非一个具体的方法,而是通过具体的一类方法达成的效果
- flat( ): 将多层数据拆分指定层级
参数:指定层级(infinity:无限层级)
arr.flat(infinity);
- flatMap(): 处理扁平化数据(只能处理一层数据,所以需要先用flat(infinity)将数组拆分成一层)
let newArr = arr.flatMap((item,index)=>{ console.log(item,index)}