Array数组方法

unshift:

作用:像数组开头追加项(可以是一项或者多项)
参数:添加的具体详,可以是一项,也可以是多项
返回值:新数组的长度
是否改变原数组:改变

shift:

作用:删除数字开头的项
参数:无
返回值:删除的项
是否改变原数组:改变

push:

作用:像数组末尾追加项(可以是一项或者多项)
参数:添加的具体详,可以是一项,也可以是多项
返回值:新数组的长度
是否改变原数组:改变

pop:

作用:删除数组末尾的项
参数:无
返回值:删除的最后一项
是否改变数组:改变

reverse:

作用:实现数组的倒序
参数:无
返回值:倒序之后的数组
是否改变原数组:改变

sort:

作用:实现数组的排序
参数:无/函数function(){}
返回值:倒序之后的数组
是否改变原数组:改变
注意:如果不传参数,只能排十以内的,如果是十以外的数字可以跟一个函数

splice:

作用:从索引n开始删除m项,并且用x进行替换
参数:splice(n,m,x)
返回值:返回值还是一个数组,数组里面是删除的项
是否改变原来的数组:改变

slice:

作用:从索引n开始复制到索引m结束(不包含m项)
参数:slice(n,m)
返回值:返回值是复制的新数组
是否改变原数组:不改变
注意:
如果不写参数m,代表的含义:从索引n开始一直复制到最后。
复制整个数组:ary.slice() 或者 ary.slice(0);

concat:

作用:拼接数组
参数:可以是拼接的项,或者数组
返回值:拼接后的新数组
是否改变原数组:不改变

toString:

作用:转为字符串
参数:无
返回值:转为字符串的值
是否改变原数组:不改变

join:

作用:把数组转换为字符串,并且用指定的连接符 连接
参数:连接符
返回值:用连接符链接之后的字符串
是否改变原数组:不改变
// 可以用到 evel()进行相加

indexof:

作用:检索某项在数组中首次出现的位置
参数:(n,m)
n:检索的项
m:从哪开始检索 (包含)
返回值:索引/-1
是否改变原数组:不改变
// 注意:如果数组中没有检查的哪一项,返回结果就是(-1);

lastIndexof:

作用:检索某项在数组中最后的位置
参数:(n,m)
n:检索的项
m:从哪结束(包含)
返回值:索引/-1
是否改变原数组:不改变

includes:

作用:检测数组是否包含某项
参数:检测的项
返回值:布尔
true 包含
false 包含
是否改变原数组:不改变

forEach:

作用:遍历数组中的每一项
参数:函数,两个形参(item,index) item:是每一项,index是索引
返回值是:undefined
是否改变原数组:不改变

map:

作用:数组的映射
参数:函数,两个形参(item,index)item是每一项,index是索引
返回值:映射之后的新数组
是否改变原数组:不改变

find()

find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。
find() 方法为数组中的每个元素都调用一次函数执行:
当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
如果没有符合条件的元素返回 undefined
注意: find() 对于空数组,函数是不会执行的。
注意: find() 并没有改变数组的原始值。

Array

Array.from()

作用:方法从一个类似数组或可迭代对象创建一个新的,浅拷贝的数组实例。
参数:Array.from()

  • arrayLike 想要转换成数组的伪数组对象或可迭代对象。
  • mapFn (可选)如果指定了该参数,新数组中的每个元素会执行该回调函数。
  • thisArg (可选)可选参数,执行回调函数 mapFn 时 this 对象。

Array.of()

作用:方法创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。
参数:任意个参数,将按顺序成为返回数组中的元素。

Array.isArray()

作用:用于确定传递的值是否是一个 Array。
参数:需要检测的值。

Array数组增加与减少思考题

删除数组的最后一项

  • ary.pop( ) //删除末尾
  • ary.splice(ary.length-1,1); //删除指定
  • ary.length-- // 通过数组的方法删除

向数组末尾追加新内容,有几种办法?

  • ary.push() // 向末尾添加
  • ary.splice(ary.length,0,8) //指定末尾添加 删除数值为0
  • ary[ary.length]=8 // 通过数组方法添加

数组遍历有几种方法?

  • forEach
  • map

String字符串方法

charAt():

作用:获取指定索引引位置对应的那个字符
区别如下
用索引值 [ 2 ] 获取如果超出字符长度 结果为undefined
用chaAt方法获取字符串长度,如果超出 结果为 " 空字符串 ";

trim ();

去除字符串头尾的空格;

includes(value);

查找字符串是否有自己想要的内容;

charCodeAt():

作用获取字符串中特定索引对应字符的ascii码值(十进制)

indexOf()/lastindexOf ():

检索字符串在那个位置最后出现

replace(n,m):

n:要替换的字符 (还可以是正则:符合某个规则的字符)
m:最终替换的字符(呈现)

split()

作用:按照指定的字符把字符串分割成数组
参数:分割符
返回值:分割后的数组

截取String字符串的三种方法

slice (n,m) :

n:从索引n开始(包含)
m:到m开始(不包含)
索引可以是负数

subString():

跟slice参数用法相同
唯一区别就是 slice可是使用负数,subString不可以使用负数

substr(n,m):

n:从索引n开始截取 (包含)
m:截取m项 (不包含)
截取字符串的长度

------------一条完美分割线--------------

  • toUpperCase():把字符串内容转换为大写
  • toLowerCase(): 把字符串内容转换为小写

Math方法

Math.abs

Math.abs(-2) ==>2(求绝对值)

Math.ceil

Math.ceil(1.2) ==>2(向上取整):无论正、负都是取最大的
Math.ceil(-1.2) ==>-1

Math.floor

Math.floor(1.5)==>1(向下取整)
Math.floor(-1.5)==>-2

Math.round

Math.round(1.51)==>2(四舍五入)
Math.round(-1.51)==>-2

Math.min

Math.min(2,1,6,5,9)==>1

Math.max

Math.max(5,9,3,4,8,2) ==>9(取最小值)

Math.random

Math.random()*(n,m)+n;(获取0-1之间的随机数)
 a.Math.random是取[0,1)的数;
 b.取[min,max]的随机整数时使用如下公式:
 Math.floor(Math.random().(max-min+1)+min)
 c.取[min.max)的随机整数时使用如下公式:
 Math.floor(Math.random().(max-min)+min)
 d.取(min,max]的随机整数时使用如下公式:
 Math.floor(Math.random().(max-min)+min+1)

Math.sprt

语法:Math.sqrt(x):(开平方)

  • Math.sqrt()方法返回一个数的平方根。
  • 如果传递的参数为负,则Math.sqrt()返回NaN。
  • 因为sqrt()是Math的静态方法,所以您始终将其用作Math.sqrt(),而不是将其用作创建的Math对象的方法。
Math.sqrt(9);   // 3
Math.sqrt(64);  // 8
Math.sqrt(2);   // 1.414213562373095
Math.sqrt(1);   // 1
Math.sqrt(0);   // 0
Math.sqrt(-1);  // NaN

Data时间对象

new Date();是一个的对象,身上有一些属性

  • getFullYear():获取年的时间
  • getMonth();值得范围在0到11之间
  • getDate();获取当前的日期
  • getDay();值【0-6】0代表的是周日,剩下的1-6代表的周一到周六
  • getHours();获取时
  • getMinutes();获取分
  • get.Seconds() ; 获取秒
  • get.Milliseconds();毫秒
  • get.Time();得到的是一个时间戳,1605837535617 距离1970年一月一日0时0分0秒的毫秒
  • toLocaleString(); /2020/11/20
  • toLocaleDateString(); 获取到时字符串的年月日,列如2019/12/25
  • toLocaleTimeString();获取到时字符串的十分秒 列如:上午10:18:25

定时器

clearTimeout(item):清除定时器
let item = setTimeout(function(形参){
 // 过多长时间之后,做一些事情(一次性)
},1000,实参)
clearInterval(Data)
let Data = setInterval(function(形参){
 // 每隔多长时间就做一次
},1000,实参)

Q.E.D.


学而不厌 不耻下问