JavaScript中的数组知识点全总结
来源:互联网 发布:长安大学网络教育 编辑:程序博客网 时间:2024/05/16 11:56
一.数组的创建:
1. var aObj=new Array([Size]);
2. var aObj=new Array(‘a’,’b’,’c’);
3.var aObj=[‘a’,’b’,’c’]; (直接定义法)
注:var aObj=[,,]; //数组中有两个元素,undefined
二.数组的元素添加和删除:
1.栈操作:push()、pop()方法从数组末尾增加和减少一个或多个元素;
2.队列操作:shift()方法从数组首部移出一个元素,push()方法从数组末尾插入一个元素;
unshift()方法从数组的首部插入一个元素; 注:以上这些方法都会更改数组的长度。
3.使用delete运算符删除数组元素:
a=[1,2,3];
delete a[1]; //数组a在索引1处不在有元素
1 in a //false
a.length //3,不影响数组长度,即长度不变
(此方法删除数组元素类似于赋值为undefined)
三.数组的截取和合并:
1.截取: aObj.slice(start, [end]);
注:(参数说明:参数为索引,取前不取后;索引为负数,则从倒[后]数计;)
var a=[1,2,3,4,5];
a.slice(3); //[4,5]
a.slice(1,-1); //[2,3,4]
a.slice(-3,-1); //[3,4]
2.合并: aObj.concat(item1,item2,item3。。。);
该方法只合并元素,并入到一个数组中:
var a=[1,2,3];
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]]
四、数组元素的排序
aObj.reverse(); //反转元素(最前的排到最后、最后的排到最前),返回数组地址
aObj.sort(); //对数组元素排序,返回数组地址
五、数组元素的字符串化
aObj.join(separator); //返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用 separator 隔开。
toLocaleString 、toString 、valueOf:可以看作是join的特殊用法,不常用。
六、将字符串变为数组:
使用split方法:
str = “s-aaa-sss-eee-www”;
targetArr = str.split(“-”); //[‘s’,’aaa’,’sss’,’eee’,’www’]
七、强大的数组操作方法
splice( para1,para2,val1,val2… ):项数组中添加和删除项,para1表示起始位置索引,para2表示删除的个数,后面的变量表示要添加的项的值,注 意是从para1处开始删除和添加的。
注意 : 参数为负数的问题,如果para1为负数,则会从数组结尾处计算,而para2为负数或0的话不会执行删除操作。
var a=[1,2,3,4];console.log(a.splice(-2,1,'a','b')); //[3]console.log(a); //[1, 2, "a", "b", 4]console.log(a.splice(1,2,[1,2],3)); //[2, "a"]console.log(a); //[1, [1,2], 3, "b", 4]
八.数组中删除重复元素的方法
1.建立一个新数组,在新数组中判断是否可以获取到原数组中值的索引,来消除原数组中重复的值;
//var student = [‘qiang’,’ming’,’tao’,’tao’,’liang’,’you’,’qiang’,’li’];
var student = [1,2,2,2,3,4,4,5,6,6];
function unique1(arr){
var Tarr=new Array();
for (var i = 0; i < arr.length; i++) {
if(Tarr.indexOf(arr[i])<0)
Tarr.push(arr[i]);
}
return Tarr;
}
var quarr1 = unique1(student);
alert(quarr1);
2.通过调换原数组中键值的位置,自动删除重复的元素,这种方法不太好理解;
//var student = [‘qiang’,’ming’,’tao’,’tao’,’liang’,’you’,’qiang’,’li’];
var student = [1,2,2,2,3,4,4,5,6,6];
function unique1(arr){
var tmp = new Array();
for(var m in arr){
tmp[arr[m]]=1;
}
alert(tmp);
//再把键和值的位置再次调换
var tmparr = new Array();
for(var n in tmp){
tmparr.push(n);
}
return tmparr;
}
var quarr=unique1(student);
alert(quarr);
这两种方法相比较而言,第一种方法更好理解,方便操作,第二种虽不好理解但是也是一种特殊的思路值得学习和研究。
- JavaScript中的数组知识点全总结
- javascript中的BOM知识点总结
- javascript中的数组总结
- C#中的数组基础知识点总结
- JavaScript中的正则表达式相关知识点总结
- javaScript中的对象、BOM、DOM知识点总结
- Javascript中的数组方法总结
- tomcat知识点全总结
- JavaScript知识点总结---------005(函数与数组)
- JavaScript数组知识点小结
- javascript中的数组和字符串方法总结
- 数组知识点总结
- 数组知识点的总结
- javascript常用知识点总结
- javascript常用知识点总结
- javascript 知识点总结
- JAVAEE----JavaScript知识点总结
- JavaScript知识点总结-1
- 织梦修改默认模板
- 程序测试技巧总结
- 51Nod 1542 羊圈偷袭
- 关于发邮件报错535 Error:authentication failed解决方法
- First Blood (最大最小公倍数)
- JavaScript中的数组知识点全总结
- android性能优化的相关视频资料
- string.xml 占位符 替换 文件
- Android应用程序资源的编译和打包过程分析
- sscanf 函数的用法
- Android应用程序资源的编译和打包过程分析
- 求2-1000以内的合数
- 友盟Could not find class 'com.umeng.analytics.d'
- Dev打包问题