JavaScript中数组常用方法

一.创建数组
(1).方法一
var arr=new Array(x);创建一个长度为x的数组空数组,如果x为空,即创建一个长度为零的空数组。即为稀疏数组。
var arr=new Array(1,2,3);//创建包含这些元素的数组

(2).方法二

var a=[];//相当于var arr=new Array();
var a=[1,2,3];//创建包含元素的数组,数组的元素可以是任意基本类型的数据,undefined也包含在内 如 var arr=[,] // ==var arr=[undefined,undefined]
旧版的浏览中中,在一些实现中,[1,3]与[1,undefined,3]是一样的。而大部分情况下,两者是不同的,连续逗号的值是不存在的。[,]与[undefined] 不相等

二. join() 将数组转化为字符串输出
var arr=[1,2,3]//
arr.join()//“1,2,3” 默认的分隔符为逗号,如果在括号内加入其他的字符串,分隔符为该字符。
arr.join("_")//“1_2_3”

join()的另外一种有趣的用法就是,用于字符串的重复

function repeatString(str,n){
return Array(n+1).join(str);
};
例如 repeatString(“a”,3)//“aaa”

既然有数组转字符串,就有字符串转数组
Array.split()方法就是将字符串化为数组的方法

三、revserse()倒序数组
reverse的用法很简单,就是将原数组的顺序倒过来,该方法使用之后,会修改元素组。
var arr=[1,2,3]//
arr.revserse() //[3,2,1]
arr //[3,2,1]

四.sort()从小到大排序数组
排序数组,如果数组由字符串,则默认区分大小写,大写在前
如果数组由数字组成,排序的原则是,按照最高位的数字进行排序
如[13,2,3] 排序之后,还是原来的顺序,因为13的最高位是1,编译器认为1比2小,所以会在2之前。
如果想真正排序两位以上的数组,可以使用以下的方法

arr.sort(function(a,b){
return a-b
}
)

a-b表示原数组从到右,两两遍历的值,如果a-b小于零,则按照从小到大输出,反之,则大到小输出,等于零则忽略。

此方法会修改原数组

五.concat()数组的拼接
var arr=[1,2,3]
arr.concat(4,5)
arr //[1,2,3,4,5]
arr.concat([6,7,[9,10]])
arr //[1,2,3,6,7,[9,10]]
此方法不会修改原数组

六.slice() 切割数组
slice(x)//表示从索引值为x开始,一直截取到最后元素
var a=[1,2,3,4,5]
a.slice(1)//[2,3,4,5]
slice(a,b)//表示从a开始到b 遵循左闭右开原则,取不到b值

如果参数是负数,表述从倒数第几个开始,从最右边开始数起

此方法也不会改变原数组

七.splice()删除
splice(a) //表示返回从a开始返回数组,并且从原数组中删除
var a=[1,2,3] // a.splice(1) //返回[2,3], a=[1]
splice(a,b) 注意b的值是多少个
splice可以用于数组的替换
var a=[1,2,3]
a.splice(1,1,“a”,“b”)
a=[1,“a”,“b”,3]

八.map()用于数组的映射
var a[1,2,3]
arr.map(function(X){
return x+10
}

a=[11,12,13]

九.filter()过滤数组
var a=[1,2,3,4,5,6,7,8,910]
arr.filter(function(x,index){
return index%3===0||x>8
}
)
// [1,4,7,8,9,10] 把符合条件的数组筛选出来,并不会改变原数组

十.every() some()
两个方法使用的时候,都需要遍历数组
var a=[1,2;3]
a.every(function(){
return x<10;
}
)
返回值为true,即每一个元素都满足条件才为true
而some则只有一个满足则为true,全部不满足才为false

十一.数组的删除
var a=[1,2,3]
(!)delete(x)
删除索引值为x的元素,使用这个方法进行删除元素,只是把对应的元素的值修改为undefined,他的长度是不变的
(2)a.length-=1;
直接移除数组最后一个元素
相当于pop()
与其相反的是push()方法,从尾部增加元素
(3)
shift(),删除数组的第一个元素,unshift()则是从第一个元素之前增加元素

总结

(1)不会修改原数组的方法
arr.slice(from,to )//查找元素,返回数组结果
arr.concat(arr1),返回新的数组

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值