JavaScript数组的创建以及常用用法
首先说明JavaScript和java没有任何关系(JavaScript名字这样命名当年纯属只是为了蹭Java的热度而已,没错它蹭成功了,它现在火得不得了了)。一个是弱类型的脚本语言一个是强类型的高级语言
JS中数组也是对象,有像对象一样的各种属性和方法,JS中数组像是Java里面的数组和集合的结合体,有数组的特性(元素可以索引访问修改等)也有集合的特性(可以调用数组的各种方法灵活的增删改等),也许这就是弱类型语言与强类型语言的区别吧,总之JS很灵活就对了。
一丶数组的创建
创建方式一: 采用new Array() 这种构造函数形式创建 创建方式如下
情况1:
//创建一个长度为0的数组 (如果没传任何值进去则数组为空)var arr = new Array(); console.log(arr[0]); // 输出: undedined (因为只创建数组没有放入任何元素)
情况2:
//创建一个长度为2的数组 (如果是只传递进去一个数值元素则是数组的长度)var arr = new Array(2); console.log(arr[0]); //输出: undefined (虽然声明了数组长度但还是没有放任何元素进去)
情况3:
//创建一个长度为3(长度为什么是3,因为只传递了3个元素进去)的数组 (如果是传递多个元素进去则是直接向数组中放入入了多个元素)var arr = new Array(2, 3, '我'); console.log(arr[0]); // 输出: 2console.log(arr[1]); // 输出: 3console.log(arr[2]); // 输出: '我'console.log(arr[3]); // 输出: undefined (因为创建该数组的时候只放了3个元素,第4个元素未定义)
创建方式二: 直接以 [...] 形式创建
情况1:
//创建一个长度为空0的数组var arr = [];console.log(arr[0]); //输出: undefined (因为没有放入任何元素)
情况2:
//创建一个长度为3的数组var arr = [1, 2, '我'];console.log(arr[0]); //输出: 1console.log(arr[1]); //输出: 2console.log(arr[2]); //输出: '我'console.log(arr[3]); //输出: undefined (因为数组一共就3个元素,第四个元素未定义)
二丶数组元素的修改
var arr = [1, '我'];//直接通过索引重新赋值修改即可arr[1] = '你'; //将索引为1的元素改成'你'console.log(arr[1]); //输出: '你'
三丶数组的一些常用方法
1.添加元素:
情况1: push() 方法向数组后面追加元素(如果push() 传入多个实参则是追加多个元素)
var arr = [1, '我'];arr.push('你'); //向数组最后追加一个元素console.log(arr[2]); //输出: '你'
var arr = [1, '我'];arr.push('你', '他'); //向数组最后追加两个元素console.log(arr[2]); //输出: '你' console.log(arr[3]); //输出: '他'
情况2: unshift() 方法向数组前面追加元素(如果unshift() 传入多个实参则是追加多个元素)
var arr = [1, '我'];arr.unshift('你'); //向数组前面追加一个元素console.log(arr[0]); //输出: '你'
var arr = [1, '我'];arr.unshift('你', '他'); //向数组前面追加两个个元素console.log(arr[0]); //输出: '你'console.log(arr[1]); //输出: '他'
情况3: concat() 方法将一个数组的元素全部添加到该数组最后
var arr = [1, '我', '你'];var arr2 = [2, '他'];arr = arr.concat(arr2);console.log(arr); //输出: [1, '我, '你', 2, '他']
2.删除元素:
情况1: poll() 方法删除数组最后一个元素并返回
var arr = [1, '我', '你'];var val = arr.pop(); //删除数组最后一个元素console.log(val); //输出: '你'console.log(arr); //输出: [1, '我']
情况2: shift() 方法删除数组的第一个元素并返回
var arr = [1, '我', '你'];var val = arr.shift(); //删除数组最后一个元素console.log(val); //输出: 1console.log(arr); //输出: ['我', '你']
3.数组元素转为字符串
join() 方法将该数组元素转为字符串如果未传入实参则是默认采用‘,’作为分隔符
var arr = [1, '我', '你'];arr = arr.join(); //未传入值则默认以',’作为分隔符console.log(arr); //输出: '1,我,你'
var arr = [1, '我', '你'];arr = arr.join('-'); //以'-'作为分隔符console.log(arr); //输出: '1-我-你'
4.数组元素反转
reverse() 方法将数组元素原来的顺序反转
var arr = [1, '我', '你'];arr.reverse(); // 将数组元素顺序反转console.log(arr); //输出: ['你', '我', 1]
5.数组排序
sort() 方法对数组元素进行排序(按照unicode排序, 如果传入的是数值类型则需要自定义排序方法)
情况1: 如果是单字符元素
var arr = ['c', 'b', 'a'];arr.sort(); // 排序console.log(arr); //输出: ['a', 'b', 'c']
情况2. 如果是数值型元素则需要自定义排序方法
var arr = [1, 6, 2, 11, 0];arr.sort(function(a, b){ //自定义数字排序方法return a - b;});console.log(arr); //输出: [0, 1, 2, 6, 11]
6.数组元素的截取
情况1: slice() 方法截取该数组的元素(截取后原数组不变),传入一个实参(包括)则是以该实参作为索引开始截取直至数组结束,传入两个实参则是以第一个实参(包括)作为索引开始直至第二个实参作为结束索引(不包括)
var arr = [1, '我', '你'];var arr2 = arr.slice(1, 3);console.log(arr2); // 输出: ['我', '你']console.log(arr); //输出: [1, '我', '你'] (原数组不变)
情况2: splice() 方法截取数组的元素, 该数组真正被截断了(截取后数组发生变化), 参数传入情况同上
var arr = [1, '我', '你'];var arr2 = arr.splice(1, 3);console.log(arr2); // 输出: ['我', '你']console.log(arr); //输出: [1] (原数组变化)
JavaScript数组的创建以及常用用法相关推荐
- Javascript数组的创建
这次讲的是JavaScript数组的创建. 数组也是对象(内建对象),它和我们普通对象功能类似,也是用来存储一些值的.不同的是普通对象 使用字符串作为属性名,而数组是使用数字来作为索引操作元素.索引: ...
- Javascript数组之创建
一.初识数组 在程序语言中数组有多重要不需要我这个程序媛再复述了,JavaScript中数组也是最常使用的对象之一,数组是值的有序集合,由于弱类型的原因,JavaScript中数组十分灵活,不像Jav ...
- JavaScript 数组方法 遍历
JavaScript 数组方法 创建一个数组 Concat()连接两个或更多的数组 并返回结果 join()用指定分隔符分隔数组并转换为字符串 Push()可向数组的末尾添加一个或多个元素,并返回 ...
- 创建零填充JavaScript数组的最有效方法?
在JavaScript中创建任意长度的零填充数组的最有效方法是什么? #1楼 使用对象符号 var x = []; 零填充? 喜欢... var x = [0,0,0,0,0,0]; 充满" ...
- JavaScript 数组拼接打印_JavaScript数组_创建数组_一维数组_length(二十三)
目录: 1.什么是数组 2.创建数组方式 3.一维数组和length 一.什么是数组 数组对象的作用是:使用单独的变量名来存储一系列的值. 通俗理解:如果把声名变量来比做小轿车的话,那么数组就是高铁, ...
- JavaScript数组常用的方法总结
导读:在实际开发中,前端工程师除了写页面布局及样式还要对后端返回的数据进行处理,返回的数据大多数是json格式,一般都是返回一个对象或者数组,下面对常用的数组的使用方法进行总结,方便在开发中手到擒来! ...
- Java、JavaScript、C语言数组的创建
Java 一维数组 类型[] 数组名 = new 类型[长度];//指定数组长度创建数组 类型[] 数组名 = new 类型[]{元素1,-}//创建数组并加入元素,动态创建 类型[] 数组名 = { ...
- php学习笔记-php数组的创建和使用,数组常用函数-day03
php数组的创建和使用,数组常用函数 数组的概念 一维数组的创建和使用 1.直接将变量声明为数组元素 2.通过array()函数来创建一维数组 3.数组的元素值的访问 4.数组元素的赋值方式 5.数组 ...
- javascript中如何创建数组-与创建数组的几种方法
javascript中数组的创建方式有3种,我只学了3种,还有没有其他方法我也不知道哈.... 下面我们来看看 js中创建数组的其中一种方法. //先写一种最常规的的创建JS数组的方法 var arr ...
最新文章
- 组队练习赛(Regionals 2012, North America - East Central NA)
- 处理字符串_5_字符串里过滤不需要的字符
- ssh长时间不操作便断开_连接SSH长时间不操作断开解决办法
- P6046-纯粹容器【数学期望,组合数】
- 03 | AI 术语:让你变得更加专业
- java mysql查询语句_Mysql查询语句执行过程
- matlab的findpeak 极点查找
- shareplex三点同步配置
- 90后告别第一份工作后,更青睐新一线城市开启职场第二步
- 全网搜php,FM全网自动采集聚合影视搜索ThinkPHP源码
- ( 科来网络分析系统 )简单的抓包步骤,具体的后面文章说
- win10上U盘插到电脑上无法显示盘符也打不开怎么办
- Vue3.0调用PC端本地摄像头录像
- kinect fusion 3D重建基本算法
- Python 变量作用域与函数(4)
- 联发科p60和骁龙710哪个好_麒麟710和联发科P60哪款更好?联发科P60与麒麟710区别对比全面评测...
- 若依框架添加静态页面,路由配置
- 计算机科学领域专业,计算机科学与技术专业主要包括哪些领域?
- 直流电机/步进电机/伺服电机 简介
- P1926 小书童——刷题大军
热门文章
- 心电信号matlab处理,基于MATLAB的心电信号的数字滤波处理
- 三菱FX3U——SFC分支与并行
- 希尔排序的实现(C语言)
- springBoot配置、thymeleaf标签
- 逻辑填空——词语积累
- HTML基本标签讲解及使用
- 计算机动画_3dsmax的使用(四)
- 磊科电脑怎么打开虚拟服务器,如何解决磊科无线路由器192.168.1.1打不开【教程图解】 | 192路由网...
- C++ (一)类定义及基本用法
- 王者荣耀熟练度铭文活动服务器优化,王者荣耀:铭文系统全面升级,新手就有满铭文,老玩家集体抵制!...