JS数组

作者: 年年_0273 | 来源:发表于2018-05-10 21:53 被阅读0次

在JavaScript中,除了对象(Object)外,数组(Array)类型应该是最常用的数据类型了。数组是数据的有序列表,在JavaScript中,数组中的每一项可以保存任何类型的数据,也就是说可以用数组的第一项保存字符串,第二项保存数值,第三项保存对象等,同时,JavaScript中数组的长度是可以动态调整的,即可以随着数据的添加自动增长以容纳新增数据。

创建数组的基本方式有两种。第一种是使用JavaScript中Array构造函数,示例如下:

var fruits = new Array();

如果预先知道数组要保存的项目数量,也可以给构造函数传递该参数,例如,下面的代码将创建一个长度为10的数组:

var fruits = new Array(10);

创建数组的第二种方式是使用数组字面量表示法。数组字面量也就是说我们直接把数组中的每一个数据项都列出来,包含在一对中括号之间,不同的数据项以逗号隔开,如下所示:

var fruits = ['apple', 'pear', 'peach']; // 创建了一个包含三个字符串的数组
var names = []; // 创建了一个空数组
var values = [1, 2, ,]; // 不要这样做!这样会创建一个包含2项或4项的数组

在我们要对数组进行读取操作时,我们可以使用中括号并提供相应的基于0的数字索引,如下所示:

var fruits = ['apple', 'pear', 'peach'];
console.log(fruits[0]); // 显示第一项 - 'apple'
fruits[1] = 'grape'; // 修改第二项
console.log(fruits[1]); // 显示第二项 - 'grape'
fruits[3] = 'banana'; // 新增第四项
console.log(fruits[3]); // 显示第四项 - 'banana'

方括号中的索引表示要访问的值。如果索引小于数组中的项数,就返回对应项的值,就像上例中fruits[0]会返回'apple'一样。设置数组中某一项的值也是使用的相同的语法,但会替换指定位置的值。如果设置某个值的索引超过了该数组现有的长度,如上述例子中的fruits[3]所示,数组就会自动增加到该索引值加1的长度(就上例而言,索引是3,因此该数组的长度就是4)。

数组的项数保存在该数组的length属性中,这个属性始终会返回0或者更大的值,如下例所示:

var fruits = ['apple', 'pear', 'peach'];
console.log(fruits.length); // 3
var colors = [];
console.log(colors.length); // 0

数组中的length属性很有特点,它不是只读的。因此,我们还可以通过设置这个属性,从数组的末尾移除数据项,请看下面的例子:

var fruits = ['apple', 'pear', 'peach'];
fruits.length = 2;
console.log(fruits[2]); // undefined - 相当于删除了数组中的第三项

JavaScript中常用方法:

  • push()方法 向数组的末尾添加新的元素。示例如下:
var fruits = ['apple', 'pear', 'peach'];
fruits.push('banana');
console.log(fruits); // ['apple', 'pear', 'peach', 'banana']
  • pop()方法 从数组的末尾移除一个元素。示例如下:
var fruits = ['apple', 'pear', 'peach'];
fruits.pop();
console.log(fruits); // ['apple', 'pear']
  • unshift()方法 向数组的前面添加新的元素。示例如下:
var fruits = ['apple', 'pear', 'peach'];
fruits.unshift('banana');
console.log(fruits); // ['banana', 'apple', 'pear', 'peach']
  • shift()方法 从数组的前面移除一个元素。示例如下:
var fruits = ['apple', 'pear', 'peach'];
fruits.shift();
console.log(fruits); // ['pear', 'peach']
以上四个方法是我们在对数组进行添加,删除的基本操作。 image
  • indexOf()方法 找到某一个数据项在数组中的索引值。示例如下:
var fruits = ['apple', 'pear', 'peach'];
console.log(fruits.indexOf('pear')); // 1 

其他资料推荐

相关文章

  • js 数组链接concat,和数组转字符串join,字符串转数

    js 数组链接用concat js 数组转成字符串 js 字符串转数组

  • js数组题目

    js面试题 js数组 一、按要求分割数组 将"js,数组,分类"字符串数组以/分割 for循环累加 join()把...

  • js 数组

    js 中数组的长度发生改变,数组就真的发生改变,快速清空数组就让数组长度为0js 数组的方法

  • JS数组以及数组变换

    有关数组 数组对象——一种特殊的对象JS其实没有数组,只使用对象来模拟数组 典型数组和JS数组的区别 典型数组 元...

  • 数组检测

    检测是否是数组: 数组转字符串: 字符串转换数组: js对象转换成js字符串: js字符串转换成js对象:

  • 概念集合

    JS中的数组和Arrary的区别 js中的数组就是array对象

  • JS 数组

    JS 数组是一种特殊的对象,不是真正的数组,它只##是通过对象来模拟数组。 JS 数组的定义 let arr = ...

  • javaScript的数组

    js中没有数组类型 js 中数组是以内置对象的形式存在 数组定义01 var attr = new Array('...

  • 数组

    数组的定义: js:存储多个相同类型数据 ,有序的数据;php数组 1,:索引数组,同js;声明:$arrName...

  • js笔记

    js数组 删除某个元素 js数组是否含有某个元素 判断value为undefined cookie操作

网友评论

      本文标题:JS数组

      本文链接:https://www.haomeiwen.com/subject/krkgqftx.html