JavaScript中的数组使用及常见的属性和方法

本文介绍了JavaScript的基本概念,包括其作为Web开发的重要角色和解释型语言特性。详细讲解了JavaScript的组成部分(ECMAScript、DOM和BOM),并着重阐述了数组的常见属性(如length和constructor)以及关键方法(如push、unshift、pop、shift等)。

JavaScript的概念

JavaScript是一种广泛用于Web开发的编程语言,它可以实现动态网页效果、交互式用户界面和数据验证等功能。JavaScript是一种解释型语言,不需要编译器,而是由浏览器直接解释执行。

JavaScript的组成

  1. ECMAScript : js语言核心部分,描述了该语言的语法和基本对象;
  2. DOM :文档对象模型,网页文档操作标准;
  3. BOM :浏览器对象模型,客户端和浏览器窗口操作基础。

JavaScript中数组的常见属性及方法

一.数组属性

1、constructor:返回创建Array对象原型的函数

  var animals = ["狮子", "老虎", "老鼠", "猫咪"];
  
  console.log(animals.constructor);//控制台查看其返回的函数
        // 返回 function Array() { [native code] }

运行结果:
在这里插入图片描述

2、length
返回其数组的长度(或数组中的元素数量)

var animals = ["狮子", "老虎", "老鼠", "猫咪"];
 
console.log(animals.length);//控制台输出其数组的长度

结果:
在这里插入图片描述

二.数组方法

我这里将会演示一部分,最后面会以表格说明其他方法。

1、push()
是新增元素的,当然可以新增一个或多个元素,不过是新增在结尾。

  var animals = ["狮子", "老虎", "老鼠", "猫咪"];
  animals.push('老鹰');//push()在数组结尾新增一个元素
  
  var animal=["狮子", "老虎", "老鼠", "猫咪"];
  animal.push('老鹰','长颈鹿');//在数组结尾新增多个元素
  
  console.log(animals);//控制台输出
  console.log(animal)

运行结果:
在这里插入图片描述

2、unshift()
与上面的push()都是新增元素,只不过区别就是push()是在新增结尾,而unshift()是新增在数组开头。

var animals = ["狮子", "老虎", "老鼠", "猫咪"];
animals.unshift('老鹰');//push()在数组开头新增一个元素

var animal=["狮子", "老虎", "老鼠", "猫咪"];
animal.unshift('老鹰','长颈鹿');//在数组开头新增多个元素

console.log(animals);//控制台输出
console.log(animal)

运行结果;
在这里插入图片描述

3、pop()

是用来删除数组最后一个元素的。

 var animals = ["狮子", "老虎", "老鼠", "猫咪"];
 animals.pop();//删除数组的最后一个元素
 console.log(animals);//控制台输出

运行结果:
在这里插入图片描述

4、shift()

与上面的pop()都是用来删除的,但是pop()是用来删除数组最后一个元素,而shift()是用来删除数组的第一个元素。

 var animals = ["狮子", "老虎", "老鼠", "猫咪"];
        animals.shift();//删除数组的第一个元素
        console.log(animals);//控制台输出

运行结果:
在这里插入图片描述

5、reverse()

其作用是反转数组中的元素位置。

var animals = ["狮子", "老虎", "老鼠", "猫咪"];
        animals.reverse();//反转数组的中元素
        console.log(animals);//控制台输出

运行结果:
在这里插入图片描述

6、sort()

若数组中是数字,可以用来排序。

var nums = [6,2,7,8,4];
        nums.sort();//对数组的元素进行排序
        console.log(nums);//控制台输出

运行结果:
在这里插入图片描述

7、splice()

其方法可以删改,所以使用有多种,以下我将一一测试。

这是删除,一个参数输入其位置,若是1,则是第1个之后都被删除。

var nums = [6,2,7,8,4];
        nums.splice(1);//这是删除数组中的元素是根据其位置,比如从1开始,那么‘6’之后都将被删除
        console.log(nums);//控制台输出

在这里插入图片描述

改:
splice(参数1,参数2,参数3)
参数1:是其输入第几个数
参数2:根据参数一位条件之后的要改的几个数,这里是讲其2之后的一个数改为6,如果是2的话,那就是将其两个数改成一个数为6。
参数3:是所要修改成的元素。

var nums = [6,2,7,8,4];
       nums.splice(2,1,6)//改
        console.log(nums);//控制台输出

运行结果:
在这里插入图片描述

8、join()

用来隔开数组的,用指定的符号隔开。

 var nums = [6,2,7,8,4];
        console.log( nums.join("/"));//将数组以指定的符号隔开,控制台输出

运行结果:
在这里插入图片描述
9、toString()

是可以将数组转换为字符串形式。

 var nums = [6,2,7,8,4];
        console.log( nums.toString());//将数组转换为字符串,控制台输出

运行结果:
在这里插入图片描述

2.1 常见方法

<
顺序方法名功能返回值是否改变原数组
1push()(在结尾)向数组添加一或多个元素返回新数组长度Y
2unshift()(在开头)向数组添加一或多个元素返回新数组长度Y
3pop()删除数组的最后一位返回被删除的数据Y
4shift()移除数组的第一项返回被删除的数据Y
5reverse()反转数组中的元素返回反转后数组Y
6sort()以字母顺序(字符串Unicode码点)对数组进行排序返回新数组Y
7splice()在指定位置删除指定个数元素再增加任意个数元素 (实现数组任意位置的增删改)返回删除的数据所组成的数组Y
8concat()通过合并(连接)现有数组来创建一个新数组返回合并之后的数组N
9join()用特定的字符,将数组拼接形成字符串 (默认",")返回拼接后的新数组N
10slice()裁切指定位置的数组被裁切的元素形成的新数组N
11toString()将数组转换为字符串新数组N
12valueOf()查询数组原始值数组的原始值N
13indexOf()查询某个元素在数组中第一次出现的位置存在该元素,返回下标,不存在 返回 -1N
14lastIdexOf()反向查询数组某个元素在数组中第一次出现的位置存在该元素,返回下标,不存在 返回 -1N
15forEach()(迭代) 遍历数组,每次循环中执行传入的回调函数无/(undefined)N
16map()(迭代) 遍历数组, 每次循环时执行传入的回调函数,根据回调函数的返回值,生成一个新的数组有/自定义N
17filter()(迭代) 遍历数组, 每次循环时执行传入的回调函数,回调函数返回一个条件,把满足条件的元素筛选出来放到新数组中满足条件的元素组成的新数组N
18every()(迭代) 判断数组中所有的元素是否满足某个条件全都满足返回true 只要有一个不满足 返回falseN
19some()(迭代) 判断数组中是否存在,满足某个条件的元素只要有一个元素满足条件就返回true,都不满足返回falseN
20reduce()(归并)遍历数组, 每次循环时执行传入的回调函数,回调函数会返回一个值,将该值作为初始值prev,传入到下一次函数中最终操作的结果N
21reduceRight()(归并)用法同reduce,只不过是从右向左同reduceN
22includes()判断一个数组是否包含一个指定的值.是返回 true,否则falseN
23Array.from()接收伪数组,返回对应的真数组对应的真数组N
24find()遍历数组,执行回调函数,回调函数执行一个条件,返回满足条件的第一个元素,不存在返回undefined满足条件第一个元素/否则返回undefinedN
25findIndex()遍历数组,执行回调函数,回调函数接受一个条件,返回满足条件的第一个元素下标,不存在返回-1满足条件第一个元素下标,不存在=>-1N
26fill()用给定值填充一个数组新数组Y
27flat()用于将嵌套的数组“拉平”,变成一维的数组。返回一个新数组N
28flatMap()flat()和map()的组合版 , 先通过map()返回一个新数组,再将数组拉平( 只能拉平一次 )返回新数组N
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值