美文网首页
JavaScript的数组

JavaScript的数组

作者: 小漫画ing | 来源:发表于2018-03-29 20:08 被阅读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']
    
    • indexOf()方法 找到某一个数据项在数组中的索引值。示例如下:
    var fruits = ['apple', 'pear', 'peach'];
    console.log(fruits.indexOf('pear')); // 1 
    

    相关文章

      网友评论

          本文标题:JavaScript的数组

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