JavaScript中数组中的方法:push()、pop()、shift()、unshift()、slice()、splice()、reverse()、join()、split()、concat()、indexOf()、forEach()、map()、
1.创建数组的几种方法
//a).通过new来创建数组,new可以省略 var arr=new Array(); var arr=Array(); //b). .通过new来创建数组,并且赋值 var arr=new Array(1,2,3); //c).中括号直接创建 var arr=[]; //常用 //d).中括号直接创建 ,并且赋值 var arr=[1,2,3]
2. 数组中的方法:
//1.push() :给数组的末尾添加元素。格式: 数组.push(参数, 参数...); var arr=['a','b','c']; var temp=arr.push('d'); console.log(arr); //'a','b','c','d' ,原数组已改变 console.log(temp); //4, 返回的是添加元素后数组的长度
//2.pop() : 格式: 数组.pop() ,删除数组最后一个元素 var arr=['a','b','c']; var temp=arr.pop(); console.log(arr); //'a','b' ,原数组已改变 console.log(temp); //c, 返回的是去掉的元素
//3.shift(): 格式: 数组.shift() 删除数组的第一个元素 var arr=['a','b','c']; var temp=arr.shift(); console.log(arr); //'b','c' ,原数组已改变 console.log(temp); //a, 返回的是去掉的元素
//4.unshift(参数, 参数...):格式:数组.unshift() 给数组 首位添加元素 var arr=['a','b','c']; var temp=arr.unshift('d','e'); console.log(arr); //'a','b','c','d','e' ,原数组已改变 console.log(temp); //5, 返回的是添加元素后数组的长度
// 5.concat(): 数组的合并 , 格式: 数组1.concat(数组2); var arr1=['a','b']; var arr2=['c','d']; var temp=arr1.concat(arr2); console.log(arr1); //'a','b' ,原数组arr1不变 console.log(arr2); //'c','d' ,原数组arr2不变 console.log(temp); //"a,b,c,d" 返回的是新数组
// 6.slice(): 数组的截取 , 格式: 数组.slice(start, end); var arr=['a','b','c','d','e','f']; var temp=arr.slice(2,4); console.log(arr); // "a,b,c,d,e,f" ,原数组arr不变 console.log(temp); //"c,d" ,返回的是截取下来的新数组
// 7.splice(): // 7.1数组的删除功能: var arr=['a','b','c','d','e','f']; var temp=arr.splice(2,4); console.log(arr); // "a,b" ,原数组arr已变 console.log(temp); //"c,d,e,f" ,返回的是删掉的数组 // 7.2 数组的插入功能: var arr=['a','b','c','d','e','f']; var temp=arr.splice(2,0,'g','h'); console.log(arr); // "a,b,g,h,c,d,e,f" ,原数组arr已变 ,无返回数组。 // 7.3 数组的替换功能: var arr=['a','b','c','d','e','f']; var temp=arr.splice(2,1,'g'); console.log(arr); // "a,b,g,d,e,f" ,原数组arr已变 。 console.log(temp); // "c ,返回的是替换掉的元素。
// 8. reverse() 数组的翻转: var arr=['a','b','c','d','e','f']; var temp=arr.reverse(); console.log(arr); // "f,e,d,c,b,a" ,原数组arr已变 。 console.log(temp); // "f,e,d,c,b,a" ,返回的是翻转后的数组。
// 9. join() 表示数组转换成字符串: var arr=['a','b','c','d','e','f']; var temp=arr.join('-'); console.log(arr); // "a,b,c,d,e,f" ,原数组arr不变 。 console.log(temp); // "a-b-c-d-e-f" ,这里以‘-’进行分割,返回的是分割 后的数组。
// 10. split() 字符串转换成数组: var str='abc-def-ghi-jk'; var temp=str.split('-'); console.log(str); // "abc-def-ghi-jk" ,原字符串不变 。 console.log(temp); // "abc,def,ghi,jk" ,这里以‘-’进行分割,返回的是分割 后的数组。
// 11. sort() 数组的翻转: //字符进行排序 var arr1=['f','e','d','c','b','a']; var temp1=arr.sort(); console.log(arr1); // "a,b,c,d,e,f" ,原数组arr已变 。 console.log(temp1); // "a,b,c,d,e,f" ,返回的是从小到大排序的数组。 //数字进行排序 var arr2=[5,4,3,2,1,0]; var temp2=arr2.sort(); console.log(arr2); // "0,1,2,3,4,5" ,原数组arr已变 。 console.log(temp2); // "0,1,2,3,4,5" ,返回的是从小到大排序的数组。缺点:只能排序一位数的数组 var arr3=[22,34,1,4,0,25] function compareArr(val1,val2){ if(val1>val2){ return 1; }else if(val1<val2){ return -1; }else{ return 0; } } console.log(arr3.sort(compareArr)); //‘0,1,4,22,25,34’ ,结合compareArr()方法可以排序任意位数的数组
// 12.indexOf(): 格式: 数组.indexOf(要查找的元素, 开始查找的下标); var arr=['a','e','c','d','e','f']; console.log(arr.indexOf('e',2)); //4 返回所需要查找的元素的下标 console.log(arr.indexOf('c')); //2 返回所需要查找的元素的下标
// 13.forEach():遍历数组 格式: 数组.forEach(function(item, index, array){}); var arr=['a','e','c','d','e','f']; arr.forEach(function(item, index, array){ console.log(item); //a/b/c/d/e/f 返回每一个元素 console.log(index); //返回每一个元素对应的下标 console.log(array); //返回整个数组 })
// 14.map():遍历数组 格式: 数组.map(function(value,key){}); var arr=[1,2,3,4,56]; var arr2= arr.map(function(value,key){ console.log(value); //a/b/c/d/e/f 返回每一个元素 console.log(key); //返回每一个元素对应的下标 return value*2 //可以修改每个元素的值,返回一个新数组 }) console.log(arr); //1,2,3,4,56 console.log(arr2); //2,4,6,8,112
个人jQuery插件库:http://www.jq22.com/myhome;
个人github地址:https://github.com/zjp2017/