字符串新增方法

str.startsWith:

判断是否已指定字符串开头的
参数1 : 指定字符串
参数2 : 指定的开始位置 (从1开始)

let str = "好好学习,每天进步一点点";
     console.log(str.startsWith("好好"));
     console.log(str.endsWith("学习",3));
repeat()

将字符串重复指定的次数 (次数不限)

let str2 = "a";
  console.log(str2.repeat(3));
模板字符串 ``

插值运算符 ${ } 可以写表达式 可以写函数

let p = document.querySelector("p");
        
    let name = ()=>{
        let n = "花花";
        return n;
    };
    let age = "18";
    let school = "高中";
    // p.textContent = `我叫${name},今年${age}岁,就要上${school}了`;
    
	//需要判断的时候, 用三目运算符
	p.textContent = 
	`我叫${name()},今年${age>13?"保密":age}岁,就要上${school}了`;

数组新增方法

新增的方法

以下介绍的方法为构造函数的方法
不是数组对象的方法,注意调用格式 数组名.方法名( )
把类数组转化成数组,我们常用的两种方式:

  • Array.from( )
    类数组: 有下标,有length, 但是无法使用数组的方法
    参数1: 需要转化的类数组
    参数2; 处理的方式(可选的)
    参数3: 函数执行时this的指向(可选)
let lis = document.querySelectorAll("li");
	// console.log(lis);
	lis = Array.from(lis,(item,index)=>{
		item.textContent = "列表";
		console.log(index);
    });
  • 展开运算符
lis = [...lis];
  • Array.map( )
    接收的得是数组才可以
    返回一个新数组,新数组中的元素,是原数组中按照指定需求处理过的数据
lis.map((item)=>item);
  • Array.of( )
    将参数组成一个 新的 数组
let arr = [1,2,3,4,5];
	arr = Array.of("a","b"); // 新数组会覆盖原有数据(原因是用arr接收了返回数组)
	console.log(arr);
  • Array.isArray( )
    检测 数据是否是个数组
console.log(Array.isArray(lis));
  • Array.find( ) 返回第一个满足条件的值
let arr_two = [1,2,3,4,5];
    let val = arr_two.find(item=>item>3);
    console.log(val);
  • Array.findIndex() 返回第一个满足条件的值 的索引(下标)
let arr_two = [1,2,3,4,5];
    let val = arr_two.findIndex(3);
    console.log(val);
  • Array.fill( )
    向指定数组填充指定的数据,覆盖原有数据。 覆盖的范围可以控制,默认是全部
let arr_three = ["a","b","c","d","e","f","g","z"];
    arr_three = arr_three.fill("v",1,4); // 位置: 包头 不包尾
    console.log(arr_three);
  • Array.includes( )
    参数1:指定的值
    参数2:指定位置(从指定的位置之后,开始查找)
let arr_three = ["a","b","c","d","e","f","g","z"];
    console.log(arr_three.includes("v",3));
数组扁平化

数组扁平化不是一个具体的方法,而是通过具体的方法来达成的效果
即实现数组扁平化

  • flat( ) 将多层数据,处理成一层
    参数: 处理层数
    未知层数的情况下: infinity–无限
let arr = [
        ["小萌",18],
        ["小萌",18],
        ["小萌",18],
        ["小萌",18],
        ["小萌",18,["小萌",17,["小萌",18]]]
    ];
  • flatMap( ) 处理扁平化数组
    因为它只能处理一层数组
    所以arr = arr.flat(Infinity);
    使用flat( )处理为一层后,再使用filter( )过滤,会无法找到
let newArr = arr.flatMap((item,index)=>{
        console.log(item,index);

        item = item.filter((item,index)=>{
             return index == 0;
        });
        return item;
    });
    console.log(newArr);