什么是数组?
数组对象是使用单独的变量名来存储一系列的值。
如果你有一组数据(例如:车名字),存在单独变量如下所示:
var car1="Saab";
var car2="Volvo";
var car3="BMW";
储存少量数据可以这么用,但如果是几十组、几百组数据呢?
最好的方法就是用数组。
并且数组可以用一个变量名存储所有的值,可以用变量名访问任何一个值。
数组中的每个元素都有自己的的ID,以便它可以很容易地被访问到。
创建数组的三种方法:
1、常规
var car1="Saab";
var car2="Volvo";
var car3="BMW";
2、简洁
var myCars=new Array("Saab","Volvo","BMW");
3、直接赋值
var myCars=["Saab","Volvo","BMW"];
访问数组
通过指定数组名以及索引,你可以访问某个特定的元素。如:访问第一个元素
var name=myCars[0];
修改第一个元素:
myCars[0]="Opel";
数组对象参考
属性 | 描述 |
---|---|
constructor | 返回创建数组对象的原型函数 |
length | 设置或返回数组元素的个数 |
prototype | 允许你向数组对象添加属性或方法 |
1、数组属性
属性 | 描述 |
---|---|
constructor | 返回创建数组对象的原型函数 |
length | 设置或返回数组元素的个数 |
prototype | 允许你向数组对象添加属性或方法 |
方法 | 描述 |
---|---|
oncat() | 连接两个或更多的数组,并返回结果 |
copyWithin | 从数组的指定位置拷贝元素到数组的另一个指定位置中 |
every() | 检测数值元素的每个元素是否都符合条件 |
fill() | 使用一个固定值来填充数组 |
filter() | 检测数值元素,并返回符合条件所有元素的数组 |
find() | 返回符合传入测试(函数)条件的数组元素 |
findIndex() | 返回符合传入测试(函数)条件的数组元素索引 |
forEach() | 数组每个元素都执行一次回调函数 |
indexOf() | 搜索数组中的元素,并返回它所在的位置 |
join() | 把数组的所有元素放入一个字符串 |
lastIndexOf() | 返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索 |
map() | 通过指定函数处理数组的每个元素,并返回处理后的数组 |
pop() | 删除数组的最后一个元素并返回删除的元素 |
push() | 向数组的末尾添加一个或更多元素,并返回新的长度 |
reduce() | 将数组元素计算为一个值(从左到右) |
reduceRight() | 将数组元素计算为一个值(从右到左) |
reverse() | 反转数组的元素顺序 |
shift() | 删除并返回数组的第一个元素 |
slice() | 选取数组的的一部分,并返回一个新数组 |
some() | 检测数组元素中是否有元素符合指定条件 |
sort() | 对数组的元素进行排序 |
splice() | 从数组中添加或删除元素 |
toString() | 把数组转换为字符串,并返回结果 |
unshift() | 向数组的开头添加一个或更多元素,并返回新的长度 |
valueOf() | 返回数组对象的原始值 |
2、array对象属性
方法 | 描述 |
---|---|
oncat() | 连接两个或更多的数组,并返回结果 |
copyWithin | 从数组的指定位置拷贝元素到数组的另一个指定位置中 |
every() | 检测数值元素的每个元素是否都符合条件 |
fill() | 使用一个固定值来填充数组 |
filter() | 检测数值元素,并返回符合条件所有元素的数组 |
find() | 返回符合传入测试(函数)条件的数组元素 |
findIndex() | 返回符合传入测试(函数)条件的数组元素索引 |
forEach() | 数组每个元素都执行一次回调函数 |
indexOf() | 搜索数组中的元素,并返回它所在的位置 |
join() | 把数组的所有元素放入一个字符串 |
lastIndexOf() | 返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索 |
map() | 通过指定函数处理数组的每个元素,并返回处理后的数组 |
pop() | 删除数组的最后一个元素并返回删除的元素 |
push() | 向数组的末尾添加一个或更多元素,并返回新的长度 |
reduce() | 将数组元素计算为一个值(从左到右) |
reduceRight() | 将数组元素计算为一个值(从右到左) |
reverse() | 反转数组的元素顺序 |
shift() | 删除并返回数组的第一个元素 |
slice() | 选取数组的的一部分,并返回一个新数组 |
some() | 检测数组元素中是否有元素符合指定条件 |
sort() | 对数组的元素进行排序 |
splice() | 从数组中添加或删除元素 |
toString() | 把数组转换为字符串,并返回结果 |
unshift() | 向数组的开头添加一个或更多元素,并返回新的长度 |
valueOf() | 返回数组对象的原始值 |
数组的增删改方法:
1)push()在数组末尾添加 返回修改后数组的长度
2)pop()在数组末尾删除 返回移除的项
3)shift()在数组头部删除 返回移除的项
4)unshift()在数组头部添加 返回新数组的长度
数组的重排序方法(二者返回的都是经过排序之后的数组)
1)sort()
var values=[0,2,13,13,45,5,50];
a)从小到大排序
values.sort(funtction(num1,num2){ return num2-num1; });
b)从大到小排序
values.sort(funtction(num1,num2){
return num2-num1;
});
2)reverse()反转数组原来的顺序
数组的操作方法
1)concat() 将接受的参数添加到原来数组的副本中,并返回新的数组。
2)slice()选取原数组中一个或对个项组成新数组,当接收一个参数时,返回从指定位置到末尾项,当有两个参数时,返回返回起始位到末尾的项,但不包括末尾项,若参数是负数,则用数组长度加上参数来确定位置。
3)splice()增,删,改方法
增:提供三个参数,第一个:起始位,第二个:删除的项(0),第三个:插入的项
删:提供两个参数,第一个:删除的起始位,第二个:删除的项
改(替换):提供三个参数,第一个:起始位,第二个:要删除的项,第三个:要要插入的项(删除项不必与替换项数量相等)
数组的位置方法
1)indexof()接收两个参数,第一个:要查找的项,第二个:查找的起始位(可选),没有从数组的开头开始 若找到则返回的是查找项在数组中的位置,没有找到则返回-1;
2)lastIndexof() 从数组的末尾开始查找
网友评论