0
点赞
收藏
分享

微信扫一扫

JavaScript学习的第六天

妖妖妈 2022-04-18 阅读 65

**JavaScript的数组对象

数组:字面意思,数据的组合。                                                                                                        数组对象:使用单独的变量名储存一系列的值,一个容器储存多个元素。                                        数组项:元素。                                                                                                                                  typeof返回object,和object类似,但是他的存储效率比普通对象要高。                                            使用单独的变量名储存一系列的值,一个容器储存多个元素。

//单独的值
var aNames=["彭于晏","陈冠希","吴彦祖","小曹"];
//不同的对象
var aShuai=[{
    name:"彭于晏",
    prop:"长得帅",
},{
    name:"陈冠希",
    prop:"长得帅",
},{
    name:"吴彦祖",
    prop:"长得帅",
},{
    name:"小曹",
    prop:"长得帅",
}
]

**JavaScript数组的创建

1、通过字面量创建  [ ]                                                                                                                        

var arr=[1,2,3,4,5,6,7];
console.log(arr);  //Array(7)

2、构造函数  new关键字  常规方式

var arr2=new Array();
//添加数组项/元素
arr2[0]="A";
arr2[1]="B";
arr2[2]="C";
console.log(arr2);  //(3)['A','B','c']

//简写方式
var arr3=new Array("彭于晏","吴彦祖","陈冠希","小曹");
console.log(arr3);  

注意:数组项为数字,且只有一个数组项时,会出现下面这种情况。

var arr4=new Array(10);
console.log(arr4);  //(10)[empty x 10]

**JavaScript数组的访问

1、通过索引进行访问                                                                                                         索引:由0开始的整数,所有的数组都有索引

var arr3=new Array("彭于晏","吴彦祖","陈冠希","小曹");
console.log(arr3[0]);
console.log(arr3[1]); 
console.log(arr3[2]); 
console.log(arr3[3]);  

for循环,遍历数组的项。

var arr3=new Array("彭于晏","吴彦祖","陈冠希","小曹");
for(var i=0,i<5,i++){
        console.log(arr3[i]);
}

2、通过索引添加数组项

var arr3=new Array("彭于晏","吴彦祖","陈冠希","小曹");
arr3[4]="周星驰";
console.log(arr3);  //(5)['彭于晏','吴彦祖','陈冠希','小曹','周星驰']
arr3[0]="成龙";
console.log(arr3);  //(5)['成龙','吴彦祖','陈冠希','小曹','周星驰']
arr3[8]="周杰伦";
console.log(arr3);  //(5)['成龙','吴彦祖','陈冠希','小曹','周星驰',empty x 2,'周杰伦']
console.log(arr3[7]);  //undefined

**JavaScript数组对象的属性

- length:设置或返回数组元素的个数。

var arr=new Array("彭于晏","吴彦祖","陈冠希","小曹");
var arr2=["彭于晏","吴彦祖","陈冠希","小曹","周星驰"];
arr.length=10;
//若长度超过了原有数组的长度,则超出的部分为undefined
console.log(arr);  //(10)['彭于晏','吴彦祖','陈冠希','小曹','周星驰',empty x 6]

- constructor:返回创建数组对象的原型函数。

- protopyte:允许数组对象添加属性或方法。

**JavaScript数组的方法

(1)concat()连接两个或多个数组,并返回结果

var arr1=[5,6,7];
console.log(arr.concat(arr1));//(7) [1, 2, 3, 4, 5, 6, 7]

(2)pop()删除数组最后一个元素,并且返回删除的元素

  console.log(arr.pop());//4

(3)push()向数组末尾添加一个或多个元素,并返回新的长度

  console.log(arr1.push(8,9));//5  

(4)shift()删除并返回第一个元素

  console.log(arr1.shift());//5

(5)unshift()向数组开头添加一个或多个元素,并且返回长度

  console.log(arr1.unshift(0,1,2,3));//8

(6)slice(开始索引,结束索引)选取数组的一部分,并返回新的数组

var arr2=[1,2,3,4,5,'A','B','C'];
console.log(arr2.slice(0,3));//留头不留尾
console.log(arr2);//原数组不变

(7)splice(开始索引,截取长度,添加元素)从数组中添加或者删除元素

  console.log(arr2.splice(1,4));//2,3,4,5
  console.log(arr2.splice(1,3,'D','E','F'));

(8)indexof()搜索数组中的元素,并返回其所在的位置,如果找不到被检索元素,返回-1

var arr3=[1,2,3,4,'A','B','C',2,3,4]
console.log(arr3.indexOf('B'));//5
console.log(arr3.indexOf('E'));//-1

(9)lastindexof()搜索数组中的元素,并返回元素最后所在的位置

console.log(arr3.lastIndexOf(2));

(10)split()将字符串转化为数组

console.log(arr3);//[1, 2, 3, 4, 'A', 'B', 'C', 2, 3, 4]

(11)reserse()=反转数组元素的数据

console.log(arr3.reverse());//[4, 3, 2, 'C', 'B', 'A', 4, 3, 2, 1]
console.log(arr3);//[4, 3, 2, 'C', 'B', 'A', 4, 3, 2, 1] 改变原数组
举报

相关推荐

0 条评论