JavaScript学习总结(一) ECMAScript、BOM、DOM(核心、浏(6)

arrayObj.concat([item1[, item2[, . . . [,itemN]]]]);

示例:

//4.5、截取和合并
 var array51=[1,2,3,4,5,6];
 var array52=[7,8,9,0,"a","b","c"];
 //截取,切片
 var array53=array51.slice(2); //从第3个元素开始截取到最后
 console.log("被截取:"+array53+"——"+array51);
 var array54=array51.slice(1,4); //从第3个元素开始截取到索引号为3的元素
 console.log("被截取:"+array54+"——"+array51);
 //合并
 var array55=array51.concat(array52,["d","e"],"f","g");
 console.log("合并后:"+array55);

结果:

2.4.6、拷贝

返回数组的拷贝数组,注意是一个新的数组,不是指向

arrayObj.slice(0);

返回数组的拷贝数组,注意是一个新的数组,不是指向

arrayObj.concat();

因为数组是引用数据类型,直接赋值并没有达到真正实现拷贝,地址引用,我们需要的是深拷贝。

2.4.7、排序

反转元素(最前的排到最后、最后的排到最前),返回数组地址

arrayObj.reverse();

对数组元素排序,返回数组地址

arrayObj.sort();

arrayObj.sort(function(obj1,obj2){});

示例:

var array71=[4,5,6,1,2,3];
 array71.sort();
 console.log("排序后:"+array71);
 var array72=[{name:"tom",age:19},{name:"jack",age:20},{name:"lucy",age:18}];
 array72.sort(function(user1,user2){
 return user1.age<user2.age;
 });
 console.log("排序后:");
 for(var i in array72) console.log(array72[i].name+","+array72[i].age);

结果:

2.4.8、合并成字符

返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用 separator 隔开。

arrayObj.join(separator);

示例代码:

//4.8、合并成字符与将字符拆分成数组
 var array81=[1,3,5,7,9];
 var ids=array81.join(",");
 console.log(ids);
 
 //拆分成数组
 var text="hello nodejs and angular";
 var array82=text.split(" ");
 console.log(array82);

运行结果:

所有代码:

<!DOCTYPE html>
<html>

 <head>
 <meta charset="UTF-8">
 <title>数组操作</title>
 </head>

 <body>
 <script type="text/javascript">
 //4.1、创建
 var array11 = new Array(); //空数组
 var array12 = new Array(5); //指定长度,可越界
 var array13 = new Array("a","b","c",1,2,3,true,false); //定义并赋值
 var array14=[]; //空数组,语法糖
 var array15=[1,2,3,"x","y"]; //定义并赋值
 
 //4.2、访问与修改
 array12[8]="hello array12"; //赋值或修改
 console.log(array12[8]); //取值
 //遍历
 for (var i = 0; i < array13.length; i++) {
 //console.log("arrayl3["+i+"]="+array13[i]);
 }
 //枚举
 for(var i in array15){ 
 //console.log(i+"="+array15[i]); //此处的i是下标
 }
 
 //4.3、添加元素
 var array31=[5,8];
 //添加到末尾
 array31.push(9);
 var len=array31.push(10,11);
 console.log("长度为:"+len+"——"+array31);
 //添加到开始
 array31.unshift(4);
 var len=array31.unshift(1,2,3);
 console.log("长度为:"+len+"——"+array31);
 //添加到中间
 var len=array31.splice(5,1,6,7); //从第5位开始插入,删除第5位后的1个元素,返回被删除元素
 console.log("被删除:"+len+"——"+array31);
 
 //4.4、删除
 var array41=[1,2,3,4,5,6,7,8];
 console.log("array41:"+array41);
 //删除最后一个元素,并返回
 var e=array41.pop();
 console.log("被删除:"+e+"——"+array41);
 //删除首部元素,并返回
 var e=array41.shift();
 console.log("被删除:"+e+"——"+array41);
 //删除指定位置与个数
 var e=array41.splice(1,4); //从索引1开始删除4个
 console.log("被删除:"+e+"——"+array41);
 
 //4.5、截取和合并
 var array51=[1,2,3,4,5,6];
 var array52=[7,8,9,0,"a","b","c"];
 //截取,切片
 var array53=array51.slice(2); //从第3个元素开始截取到最后
 console.log("被截取:"+array53+"——"+array51);
 var array54=array51.slice(1,4); //从第3个元素开始截取到索引号为3的元素
 console.log("被截取:"+array54+"——"+array51);
 //合并
 var array55=array51.concat(array52,["d","e"],"f","g");
 console.log("合并后:"+array55);
 
 //4.7、排序
 var array71=[4,5,6,1,2,3];
 array71.sort();
 console.log("排序后:"+array71);
 var array72=[{name:"tom",age:19},{name:"jack",age:20},{name:"lucy",age:18}];
 array72.sort(function(user1,user2){
 return user1.age<user2.age;
 });
 console.log("排序后:");
 for(var i in array72) console.log(array72[i].name+","+array72[i].age);
 
 //4.8、合并成字符与将字符拆分成数组
 var array81=[1,3,5,7,9];
 var ids=array81.join(",");
 console.log(ids);
 
 //拆分成数组
 var text="hello nodejs and angular";
 var array82=text.split(" ");
 console.log(array82);
 
 </script>
 </body>

</html>
      

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/403.html