2016年5月26日下午(妙味课堂js基础-1笔记四)
本课内容:
1. 数组定义、length使用
2. push、pop、shift、unshift方法
3. 排序:sort方法、字符串排序、数字排序
4. cancat、join方法
5. split方法
6. splice方法:删除、插入、替换
一、数组
数组的使用
(1)定义:
var arr=[12, 5, 8, 9];
<script type="text/javascript"> var arr=[1,2,3,4]; alert(arr[0]); </script>
var arr=new Array(12, 5, 8, 9);
<script type="text/javascript"> var arr=new Array(1,2,3,4); alert(arr[0]); </script>
这两种写法没有任何差别,[]的性能略高,因为代码短
(2)数组的属性
length:既可以获取,又可以设置
script type="text/javascript"> var arr=[1,2,3,4]; arr.length=10; alert(arr); </script>
例子:快速清空数组
数组使用原则:数组中应该只存一种类型的变量
二、添加、删除元素
(1)添加
——push(元素),从尾部添加
<script type="text/javascript"> var arr=[1,2,3]; arr.push(4); alert(arr); //1,2,3,4 </script>
——unshift(元素),从头部添加
<script type="text/javascript"> var arr=[1,2,3]; arr.unshift(4); alert(arr); //4,1,2,3 </script>
(2)删除
——pop(),从尾部弹出
<script type="text/javascript"> var arr=[1,2,3]; arr.pop(); alert(arr); //1,2 </script>
——shift(),从头部弹出
<script type="text/javascript"> var arr=[1,2,3]; arr.shift(); alert(arr); //2,3 </script>
三、排序、转换
(1)排序
sort([比较函数]),排序一个数组
——排序一个字符串数组
<script type="text/javascript"> var arr=['float', 'zindex', 'xy', 'absolute', 'blue', 'leo']; arr.sort(); alert(arr); </script>
——排序一个数字数组
<script type="text/javascript"> var arr=[96, 8, 12, 72, 33, 118]; arr.sort(function (num1, num2){ return num1-num2; }); alert(arr); </script>
sort()只认识字符串;如果要它来排序其他的类型,需要进行处理;具体后面再说。
(2)转换类
concat(数组2)
——连接两个数组
<script type="text/javascript"> var str1='abc'; var str2='123'; alert(str1+str2); //这个代码弹出来的是abc123 </script>
<script type="text/javascript"> var arr1=[1,2,3]; var arr2=[6,7,8]; alert(arr1.concat(arr2)); //弹出来的是1,2,3,6,7,8;这个是数组连接; </script>
join(分隔符)
——用分隔符,组合数组元素,生成字符串
<script type="text/javascript"> var arr=[1,2,3,4]; alert(arr.join(':')); //1:2:3:4 </script>
——字符串split
<script type="text/javascript"> var str="12-4-5-8"; var arr=str.split("-"); alert(arr[1]); //4 </script>
四、插入、删除
(1)splice
splice(开始, 长度,元素…)splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
1、(可以从数组的中间来删除一些元素)
<script type="text/javascript"> var arr=[1,2,3,4,5,6,7,8,9]; arr.splice(2,3); alert(arr); //1,2,6,7,8,9 </script>
2、(可以从数组的中间来删除一些元素再插入一些元素)
<script type="text/javascript"> var arr=[1,2,3,4,5,6,7,8,9]; arr.splice(5,2,"a","b","c"); alert(arr); ,2,3,4,5,a,b,c,8,9 </script>
先删除,后插入