JavaScript零基础入门——(八)JavaScript的数组
欢迎大家回到我们的JavaScript零基础入门,上一节课我们讲了有关JavaScript正则表达式的相关知识点,便于大家更好的对字符串进行处理。这一节课,我们来讲一讲,JavaScript的数组。
之前我们有讲过,数组是用方括号包裹起来的一种存放数据的类型。但其实呢,数组在JS中是作为一种对象(即Array对象)存在,既然是对象,就会有它的属性和方法,至于为什么一定会有,我们后边的课再讲。
首先,我们来说一下数组的定义。一般来说,数组的定义有两种,一种是我们常见的用方括号来告诉程序,我是一个数组,具体表现为var arr = [];而另一种呢是比较标准的写法,即通过new Array来实现。通常情况下,我们的每一个数组,只存一种类型的变量。我们来看看代码:
var arr1 = [12,5,8];
var arr2 = new Array(12,5,8);
刚刚说了,作为Array对象,就一定有它的属性。Array的属性有不少,但我们常用的基本上只有一个,那就是length,即数组长度,这是一个可set可get的属性,也就是说我们可以取到它的值,也可以给他赋值,而赋值我们常常用于清空数组。来看代码:
var arr = [12,5,8,33];
console.log(arr.length);//4
arr.length = 0;
console.log(arr);//空的
说完属性,我们来说方法。JS数组的方法其实有很多,其中最常用的是五类数组操作方法,我们分别来看一下。
- 添加元素
- push(item)——从尾部加一个数组元素;
- unshift(item)——从头部加一个数组元素;
- 删除元素
- pop()——从尾部弹出一个元素;
- shift()——从头部弹出一个元素;
var arr = [12,5,8];
arr.push(33);
console.log(arr);//[12,5,8,33]
arr.unshift(1);
console.log(arr);//[1,12,5,8,33]
arr.pop();
console.log(arr);//[1,12,5,8]
arr.shift();
console.log(arr);//[12,5,8]
- 排序
- sort([比较函数]),如果不传比较函数,默认只按字符串排序;
var arr = [12,99,65,8,24,16];
arr.sort(function(n1,n2){
if(n1>n2){
return 1;
}else if(n1==n2){
return 0;
}else{
return -1;
}
});
arr.sort(function(n1,n2){
return n1-n2;
});
- 转换
- concat——两个数组连接;
- join(连接符)——将元素用连接符连接后返回字符串;
var arr = [12, 5, 8];
var arr2 = [6, 2, 3];
arr = arr.concat(arr2);
console.log(arr); //[12,5,8,6,2,3]
arr = arr.join('/')
console.log(arr); //12/5/8/6/2/3
- 万能的splice
- 插入——splice(startIndex,0,item1,item2..);
- 删除——splice(startIndex,deleteLength);
- 先删后插入——splice(startIndex,deleteLength,item1,item2...);
var arr = [12, 5, 8];
arr.splice(1,0,16);
console.log(arr); //[12,16,5,8]
arr.splice(2,1);
console.log(arr); //[12,16,8]
arr.splice(1,1,10,18);
console.log(arr); //[12,10,18,8]
好了,这节课简单的了解了JavaScript的数组,希望大家自己敲一敲。下一节课,我们来讲一讲JavaScript中的函数。
如果想跟着振丹继续学习,可以微信关注【振丹敲代码】(微信号:JandenCoding)
新博文微信同步推送,还附有讲解视频哦~
也可直接扫描下方二维码关注。