JavaScript权威指南笔记之数组方法

join()

var a = [1,2,3];
a.join();  //返回‘1,2,3’
a.join(' ') // 返回 ‘1 2 3’
a.join('') // 返回 ‘123’
var b = new Array(10);//
b.join('-')// 返回 ‘----------’


 
reverse()
颠倒数组。
var a = [1,2,3];
a.reverse().join() //返回‘3,2,1’ , 现在的a是[3,2,1]


sort()
对数组元素进行排序,默认按字符串排序。字母区分大小写
a.sort(function(a,b){
 return a-b;  // 按增序排列
return b-a;  // 按降序排列
 }); 


cancat()
返回一个新的数组
var a = [1,2,3]; 
a.concat(4,5);//返回[1,2,3,4,5]
a.concat([4,5]);//返回[1,2,3,4,5]
a.concat([4,5],[6,7]);//返回[1,2,3,4,5,6,7]
a.concat(4,[5,[6,7]]);//返回[1,2,3,4,5,[6,7]]



slice()
返回数组的一个片段活子数组
var a = [1,2,3,4,5];
a.slice(0,3); // 返回[1,2,3] 
a.slice(3);//返回[4,5]
a.slice(1,-1); //return [2,3,4]
a.slice(-3,-2); //return [3]



splice(a,b,c...)
删除,插入数组元素
a表示插入或删除的其实位置,b表示删除元素的个数,省略表示删除之后全部元素,c...后面任意个数的元素表示插入的元素。
返回的删除的元素组成的数组,没有删除,则返回空数组。
push(),pop()
push()表示向数组尾部插入一个或多个元素。返回数组长度
pop()表示删除数组尾部元素。返回删除的元素
unshift(),shift()
unshift()向数组头部插入一个或多个元素,返回数组长度
shift()删除数组头部元素,返回删除元素

ES5中定义了新的数组方法
遍历forEach(),映射map(),过滤filter(),检测every()和some(),简化redcue()和reduceRight(),搜索indexOf()和lastIndexOf()
forEach() 无法break; 若使用则抛出foreach.break异常
map(function) 将调用的数组的每一个元素传递给指定的函数,并返回一个数组。
var a = [1,2,3]; 
b = a.map(function(argument) {
    return x*x;
}) // b = [1,4,9]


filter(function)返回满足function的返回值组成的数组
a = [5,4,3,2,1];
smallvalues = a.filter(function(x){
    return x<3;
});//[2,1]
everyother = a.filter(function(x,i){ // x:value,i:key
    return i%2 == 0;
});//[5,3,1]


every(function)数组中的元素全部满足function则返回true,否则返回false
some(function)存在满足function的元素级返回true
reduce(function,a) function为执行的函数,a为初始值
var a = [1,2,3,4,5];
var sum = a.reduce(function(x,y){
    return x+y;
},0);//数组求和
var product = a.reduce(function(x,y){
    return x*y;
},1);//数组求积
var max = a.reduce(function(x,y){
    return (x>y)?x:y;
});//求最大值


indexOf() 搜索数组,返回找到的第一个元素的索引或没有着懂啊返回-1.indexOf()从头至尾,lastIndexOf()反向搜索

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值