码迷,mamicode.com
首页 > 编程语言 > 详细

JS数组常用方法

时间:2016-06-18 01:15:13      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:

 
 
var arr01 = [ "fuc" , "shit" , "assho" ];
var arr02 = [  1 , 2 , 3 ];

  

// 以下多数省略前半部分的对象名(arr01)
 
var temp = arr01.join("and")    //  将数组内所有元素转换为一个字符串 , 可指定分隔符
 
 
concat(arr01,arr02)    //  用于连接 . 可放置两个或多个参数 (字符串/数组均可)
indexof("str")    //  返回str第一次出现的索引位置 (数字也可) , 未找到返回-1
lastIndexOf("fuc")    //  返回最后一次出现的索引位置
slice(start,end)    //  不包括结束索引处的元素 , 不指定参数可截取所有元素(可用于复制数组)
 
splice(index,num,item1,item2,...)
// 过程 : 从数组第[index]个元素删除[num]个元素,插入item1 item2 (新元素数量不限)
// 元素参数个数任意 , 可省略 .
// 若省略此函数可作为 "从索引[n]开始删除[m]个元素 "来使用
// 第二个num指定删除多少个元素 , 若为0 , 则在索引index前添加元素
 
 
push("01","02")    //  在数组末尾加上指定元素
unshift("01","02")    //  在数组开头处加上指定元素
pop()    //  从末尾删除单个元素
shift()    //  从开头删除单个元素
 
sort()    //  默认都按字母升序. so若要作为数字排序,需带上参数(升序) (function(a,b){return a-b}) 降序为b-a
reverse()    //  颠倒原数组的所有元素
 
 
几个复杂点的 : 
( 这几项都要配合函数来玩~ )
 
 
① MAP
newArr = oldArr.map(func) 

  

//  map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
// 不会改变原始数组
 
源代码示例 : 
var strings = ["hello", "Array", "WORLD"];
function makeUpperCase(v)
{
    return v.toUpperCase();
}
var uppers = strings.map(makeUpperCase);
// uppers is now ["HELLO", "ARRAY", "WORLD"]
// strings is unchanged
//结果:["hello", "Array", "WORLD"].map(makeUpperCase) : HELLO, ARRAY, WORLD  
OR
var nums = [4,9,16,25] ;
function test(){
   document.write(nums.map(Math.sqrt));
}
 
test();

  

②  Every & Some
 
// 两种方法用于 用于检测数组中的元素是否满足指定条件
// 区别在于 前者必须都满足才返回True , 后者有一个满足就返回True
// 俩方法均不会改变原数组
 
var ages = [20,15,19,30];
function adultYes(age){
     return age > 18 ;
}
function test(){
     document.write(ages.every(adultYes));
}
 
test();
 
// 函数内为every返回false 
// 为some返回true

  

 
③ Filter 
 
// filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
// 可以直接过滤掉不符合条件的元素
// 当然 , 仍不会改变原数组
 
var ages = [20,15,19,30];
function adultYes(age){
     return age > 18 ;
}
function test(){
     document.write(ages.filter(adultYes));
}
 
test();

  

 
 

JS数组常用方法

标签:

原文地址:http://www.cnblogs.com/techmale/p/5595440.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!