6、数组算法
数组常用方法:
1.方法的作用
2.该方法是否需要传参
3.该方法是否有返回值
4.原数组是否发生改变
一、增 删 替换 5个 ---原数组不变
var ary=[1,3,5]; var res=ary.push(3,"aa") console.log(res) // push // 末尾增加内容 // unshift // 开头增加内容 // pop // 删除最后一项 // shift // 删除第一项 // splice(n,m) // 从n开始 删除m个 // splice(n,0,m) // 从n开始 删除0个 给索引n前面添加m内容 // splice(n,m,x) // 从n开始 删除m个 替换为x的新内容 // slice(n,m)从索引n找到索引m 包前不包后 不包含m 数组查找
二、查找和克隆
// concat 数组拼接 // 数组克隆: // slice(0) / slice() // splice(0) // concat()
注意:n或m为负值情况--右边第一个数索引视为-1
三、数组转字符串
// toString() 原数组不变 转成字符串 逗号分隔 // join() 传参数 可以用eval配合join 实现算数运算 eval作用 把字符串转为js代码执行
四、排列、排序
// ary.sort(function(a,b){return a-b}) 原数组改变 // reverse 数组倒序翻转 原数组改变
五、常用不兼容
// indexOf(查找的内容) 查找内容的索引 // 没找到 返回-1 // forEach 遍历数组 原数组不变 没有返回值 // 有2个参数:1、callback 回调函数(item值 index索引 input原数组 )2、用来改变this指向 // map 遍历数组 有返回值