js 数组常用的操作函数整理

页面导航:首页 > 网络编程 > JavaScript > js 数组常用的操作函数整理

js 数组常用的操作函数整理

来源: 作者: 时间:2016-02-02 09:59 【

平时多做企业应用开发,抱着实用为主,对前端技术理解得比较肤浅,下面就是肤浅地对 js 数组的属性和方法及对它操作的 jquery 方法做些记录;js 数组是 js 内建的一个非常强大数据类
平时多做企业应用开发,抱着实用为主,对前端技术理解得比较肤浅,下面就是肤浅地对 js 数组的属性和方法及对它操作的 jquery 方法做些记录;
 
 
 
js 数组是 js 内建的一个非常强大数据类型,由于 js 是弱类型语言,所以一个数组可以保存多种类型的数据: 数字、字符串、对象、函数、布尔... ...;
 
var arr = [1,{name:'Jonh',id:1001}, function(){console.log('test');},'hello world',true]; 
 
 
常用访问数组元素的方法:
 
for 和 for-in 在循环时,如果数组大小做了改变,使用起来会有所区别;
 rr1 = [1,2,3,4,5];
 
// for,  因为 testArr1.length 是一个常数 5, 循环过程 testArr1 大小变了,循环次数还是 5;
for(var i = 0; i < testArr1.length; ++i){
    if(i == 3) testArr1.push(6); // 添加一个元素;
    console.log(testArr1[i]); // 访问不到新加的元素 6; 
}
 
 
var testArr2 = [1,2,3,4,5]; 
 
// for-in 如果循环过程中 testArr2 的大小变了, i 如果大于了改动后的 testArr2.length,会马上终止循环
for(var i in tsetArr2){
  if(i==3)testArr2.push(6); // 添加一个元素; 
  console.log(testArr2[i]); // 可访问到新加的元素 6;    
}
 
jquery 循环: $.each, $.grep, $.map 与 for 最大不同是循环过程不能退出,即一定会访问数组中的每个元素到结束;而for 可以用 break 中断循环;
 
 
 
 
var testArr = [1,2,3];
 
//访问数组元素;
$.each(arr,function(index,elem){
});
 
// 返回符合条件的元素,组成一个新的数组;
//注意 function(elem,index) 第一个实参是元素,第二个才是元素的索引
var newArr = $.grep(arr,function(elem,index){
     //condition
     return elem==1 or elem ==2; 
});
// newArr is [1,2]
 
 
// 返回任意新的数组元素,组成 一个新的数组;
var newArr = $.map(arr,function(index,elem){
    return 'test-' + index;
});
// newArr is ['test-1','test-2','test-3']; 
 
 
 
 识别数组:
 
 
// 数组是一种特殊的 object 类型,typeof 拿到的只是 object; 
typeof arr; // => object
 
// 可用下面 2 种方法判断对象是否为数组
arr.constructor.toString().indexOf('Array') > 0
// 或
Object.prototype.toString.call(arr) == '[object Array]'
 
常用方法:
 
 
// join 将数组中的元素组合成一个字段串,元素之间用指定的字符串连接起来;
arr.join(','); //"1,[object Object],function (){console.log('test');},hello world,true"
 
// push 向数组添加新的元素, 数组改变;
arr.push('new'); 
 
// pop 弹出最后一个元素,数组改变;
arr.pop(); // 'new'
 
// slice(startIdx, count) 获取数组中一段连续的元素,组成一个新的数组;startIdx 开始索引,count 数量;
arr.slice(0,1); //[1]; 
 
// splice(startIdx,count,otherElems)  有强大的功能,包括: 插入,替换,删除;startIdx 开始索引, count (替换,删除)数量, 数组改变并返回一个新的数组;
// 替换
var testArr = [1,2,3,4,5]; 
var retArr = testArr.splice(0,2,7,8,9);//retArr is [1,2], testArr is [7,8,9,3,4,5], "7,8,9" 是替换 "1,2"; 
// 删除,省略 otherElems 就是删除
var testArr = [1,2,3,4,5]; 
testArr.splice(0,2); // testArr is [3,4,5]; 
//插入,将 count =0 ,即不作替换直接插入
var testArr = [1,2,3,4,5];
testArr.splice(2,0,7,8,9); //testArr is [1,2,7,8,9,3,4,5]; 
Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<