【JS】Array 数组简解

news/2024/7/19 13:55:48 标签: js, 数组

文章目录

一、数组概述

  • 什么是数组
  • 字面理解就是数字的组合
  • 其实不太准确,准确的说数组就是一个数据的集合
  • 也就是我们把一些数据放在一个盒子里面,按照顺序排好
js">[1,2,3,"js",true,false]
//这个东西就是一个数组,存储着一些数据的集合

1.1 数组索引

  • 索引,也叫做下标,是指一个数据在数组里面排在第几个的位置
  • 注意:在所有的语言里面,索引都是重0开始的
  • js 里面也是一样的,数组的索引从0开始
js">//创建一个数组
var  arr = ["hello","world"];
/*
	上面这个数组中:
	第 0 个数据就是字符串`hello`
	第 1 个数据就是字符串`world`
*/
  • 要取得或设置数组的值,需要使用中括号并提供相应值的数字索引
js">var arr = ["hello","world"];

console.log(arr[0]);	// hello
console.log(arr[1]);	// world
// 修改第二项
arr[1] = "jack"		// ["hello","jack"]
// 添加第三项
arr[2] = "good morning"		// ["hello","jack", "good morning"]

1.2 数组长度

  • length:表示数组的长度,数组里面有多少个成员,length就是多少
js">//创建一个数组
var arr = [1,2,3];

console.log(arr.length);//3
  • 可以通过修改 length 属性,从数组末尾删除或添加元素
js">let colors = ["red", "blue", "green"]
colors.length = 2;
console.log(colors)	// ["red", "blue"]

colors.length = 3;
console.log(colors)	// ["red", "blue", undefined]

1.3 数组空位

  • 由于行为不一致和存在性能隐患,因此实践中要避免使用数组空位。
  • 如果确实需要空位,则可以显式使用 undefined 值代替
  • 使用字面量初始化数组时,可以使用一串逗号来创建空位、
  • ECMAScript会将逗号之间相应索引位置的值当成空位
js">const options = [ , , ]			// 创建包含 3 个元素的数组
console.log(options.length);	// 3
console.log(options);			// [ , , ]
  • ES6新增方法普遍将这些空位当成存在的元素,只不过值为undefined
js">const options = [ 1, ,3 ]
for(const option of options){
	console.log(option === undefined);
}
/*
	false
	true
	false
*/
  • ES6之前的方法会忽视这个空位,但具体行为因方法而异
js">const options = [ 1, ,3 ]

// map() 会跳过空位
console.log(options.map(()=>6));	// [6, undefined, 6]

// join() 视空位为空字符串
console.log(options.join("-"));		// "6-6"

二、创建数组

  • 数组就是一个[]
  • []里面存储着各种各样的数据,按照顺序依次排好

2.1 字面量创建

  • 直接使用[]的方式创建一个数组,并不会实际调用Array构造函数
js">//创建一个空数组
var arr1 = [];

//创建一个有内容的数组
var arr2 = [1,2,3];

2.2 构造函数创建

  • 使用 js 的内置构造函数Array创建一个数组
js">// 构造函数不传值
var arr1 = new Array();		// 创建一个空数组,[]

// 构造函数传入一个数字值
var arr2 = new Array(2);	// 创建一个长度为10的数组,[,]
// 构造函数传入一个非数字值
var arr3 = new Array("10");	// 创建包含该值的数组数组,["10"]

// 构造函数传入多个任意值
var arr4 = new Array(1,2,3);// 创建一个包含所有内容的数组,[1,2,3]
  • 使用 Array构造函数时,也可以省略 new操作符,结果是一样的
js">// 构造函数不传值
var arr1 = Array();		// 创建一个空数组,[]

// 构造函数传入一个数字值
var arr2 = Array(2);	// 创建一个长度为10的数组,[,]
// 构造函数传入一个非数字值
var arr3 = Array("10");	// 创建包含该值的数组数组,["10"]

// 构造函数传入多个任意值
var arr4 = Array(1,2,3);// 创建一个包含所有内容的数组,[1,2,3]

其他资料

点击跳转:数组方法大全


http://www.niftyadmin.cn/n/509772.html

相关文章

【JS】Math 对象用法

Math 对象对象属性随机数 random()最值 min() 和 max()舍入 ceil()、floor()、round()、fround()其它方法扩展: Math 对象上提供的计算要比直接在JavaScript实现的快的多,因为Math 对象上的计算使用了 JavaScript引擎中更高效的实现和处理器指令。但使用…

SVG的使用引入

SVG引入 SVG的代码可以直接嵌入到HTML页面中,也可以直接链接到SVG文件。 SVG 文件可通过以下标签嵌入 HTML 文档: ​ 、

【JS】String 字符串简解

文章目录创建字符串1. 字面量创建(常用)2. 内置构造函数创建操作字符串1. 字符串长度2. 字符串赋值3. 字符串索引4. 字符串遍历模板字符串【ES6】与普通字符串区别ASCII 字符集ASCII 表字符串比较Unicode 编码【扩展】创建字符串 我们创建字符串也分为两…

【JS】Date 对象用法

文章目录Date 对象Data 方法getFullYeargetMonthgetDategetHoursgetMinutesgetSecondsgetDaygetTime时间差计算时间差获取时间差 now()Date 对象 Date 是 js 的一个内置对象,该对象存储日期和时间,并提供了日期/时间的管理方法 new Date()在不传递参数的…

SVG的形状元素

SVG的形状元素 矩形 圆形 椭圆 线 折线 多边形 路径 矩形 <svg xmlns"http://www.w3.org/2000/svg" version"1.1"><rect x"50" y"20" rx"20" ry"20" width"150" height"150" sty…

CSS_Column多列布局

文章目录CSS3 多列浏览器兼容多列属性column-countcolumn-gapcolumn-rulecolumn-spancolumn-widthBGU解决方法CSS3 多列 CSS3 可以将文本内容设计成像报纸一样的多列布局 浏览器兼容 多列属性 column-count column-count&#xff1a;指定了需要分割的列数 div {-webkit-co…

vue可调整大小和可拖动的组件---vue-draggable-resizable

vue-draggable-resizable 用于可调整大小和可拖动元素的组件、并支持组件之间的冲突检测和组件对齐。 使用流程&#xff1a; 安装依赖&#xff1a; npm install --save vue-draggable-resizable 注册组件(在main.js中添加下列代码)&#xff1a; import Vue from vue import Vue…

CSS3_多媒体查询

文章目录多媒体查询浏览器兼容多媒体查询语法多媒体查询简单实例多媒体类型webkit-overflow-scrolling多媒体查询 CSS3 的多媒体查询继承了 CSS2 多媒体类型的所有思想&#xff1a; 取代了查找设备的类型&#xff0c;CSS3 根据设置自适应显示。 媒体查询可用于检测很多事情&a…