js中反转数组⽅法_JS数组中⽅法使⽤⼤全!!!今天学到了数组的使⽤⽅法 ,给⼤家分享⼀下!
数组源于五种类型Undefined、Null、Boolean、Number和String。
Object类型 *Array类型 *Date类型 *RegExp类型 *Function类型
基本包装类型:Boolean类型、Number类型和String类型
单体内置对象:Global对象、Math对象。
⾸先创建⼀个数组
var aa = new Array()
var aa = Array(1,2ww,3,4,5)//数组
console.log(aa)
数据的length属性
(不是只读的,通过这个属性,可以从数组的末尾添加或删除)
var a = ['red','baclk','green'];
a.length = 5, //只有第⼀个,删除或增加
a[4]='aaa' //添加新项⽬
console.log(a)
length-1 = 数组最后⼀项的值始终是length-1 就是为了求这个数组的下标
检测数组
检测数组有两种⽅式
var aa = [1,2,3,4,5]
console.log(aa instanceof Array); //true 第⼀种⽅法 是数组
console.log(Array.isArray(aa)); //true 第⼆种⽅法是数组
数组的转换⽅式
var brr = [1,2,3,'aa','bb',66];
console.String());// 转换为字符串
console.log(brr instanceof Array);//检测为数组
console.log(brr.valueOf())//返回值还是数组
console.LocaleString()) //返回字符串
console.log(brr.join('=='))//不加 参数默认 以,逗号分隔
栈⽅法
栈是⼀种LIFO(后进先出)的数据结构,也就是最新添加的项最早被移出
·push()⽅法:接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。
·pop()⽅法:从数组的末尾移除最后⼀项,减少数组的length值,然后返回被移除的项。
var aa = [1,2,3,4,5];
console.log(aa.push(6));//返回数组的长度=6
console.log(aa);//在末尾增加数组 结果为1 2 3 4 5 6
console.log(aa.pop(1))// 移除末尾的最后⼀项 返回被移除的项 = 6
console.log(aa) //在末尾减少数组 结果为1 2 3 4 5
队列⽅法
队列数据结构的访问规则是FIFO(先进先出)。
unshift()
var aa = [1,2,3,4,5]
// console.log(aa.unshift(3,5,8)); //打印出来返回的是新数组 = 8
console.log(aa); //前端添加新数 3 5 8 12345
shift():从数组的前端移除第⼀项(也就是位置索引值为0),减少数组的length,值然后返回被移除的项
例:console.log(aa.shift()); //移除第⼀项 返回值为 3
重排序⽅法
reverse():反转数组项的顺序
例:var aa = [1,2,3,4,5]
console.verse()) 反转结果=5,4,3,2,1
// sort()排序:
例:var aa = [1,23,42,3,5,4,]
console.log(aa.sort()) //结果为1,23,3,4,42,5 ⽐较第⼀位数
console.log(aa.sort(function(a,b){
return a-b//从⼩到⼤排序 1 3 4 5 23 42升序
return b-a//从⼤到⼩排序 42 23 5 4 3 1 降序
操作⽅法
·concat()⽅法可以基于当前数组创建⼀个新数组,连接两个或两个以上的数组。
例:
var a = [1];
var b = [2];
var c = [5,7,8]
console.at(2)) //连接后结果为 [1,2]
console.at(b,c)) //连接后结果为[1,2,5,7,8]连接多个
slice():⽅法可提取字符串或者数组的某个部分, 并以新的字符串或数组返回被提取的部分
例:var aa = [1,2,3,4,5,6,7,8];
console.log(aa.slice(2,4)) 返回被提取的值 3,4 (2是下标开始 4是结束 提取结束前⼀个数)
splice():⽅法⽤于插⼊、删除或替换数组的元素 splice(start(从哪开始删),howmany(删多少) 新元素1,新元素2,)删除 插⼊ 替换例:
var aa = [1,2,3,4,5,6,7,8];
console.log(aa.splice(2,4)) //从第⼆个开始删 删四个 结果为[3,4,5,6]
console.log(aa)// 改变新数组 结果为1 2 7 8
console.log(aa.splice(2,4,'666')) //增加新元素 从第⼆个开始
console.log(aa) //结果 为1 2 ‘666’ 7 8
位置⽅法
·indexOf():返回某个指定的字符串值或者某个数组元素值在字符串或者数组中⾸次出现的位置
例:var arr = ['a','b','c','d','a','c','b']
console.log(arr.indexOf('a',3))//从第三个开始a 到a后从前往后数下标 结果是4
indexOf();传⼊要的项,到返回下标,不到返回-1
·lastIndexOf():返回⼀个指定的字符串值最后出现的位置,在⼀个字符串中的指定位置从后向前搜索
例:console.log(arr.lastIndexOf('a',-4))//从后往前 从-4往前a 到后从前往后数下标 结果为0迭代⽅法
ES5为数组定义了5个迭代的⽅法。
·every()
sort函数 js
对数组的每⼀项运⾏给函数,如果每⼀项都返回true,那就返回true
some()
对数组的每⼀项给定函数,如果⾥⾯有⼀项返回true 那就返回true
filter()
对数组的每⼀项给定函数,他会返回函数返回true的项组成的数组
map()
对数组的每⼀项给定函数,返回每次函数调⽤的结果组成的数组
forEach()
对数组的每⼀项给定函数,这个没有返回值 给了return也没⽤!