zoukankan      html  css  js  c++  java
  • js操作数组

    一、数组的声明方式:

    var colors = new Array();//创建数组

    var colors = new Array(20);//创建20个长度的数组

    var colors = new Array("Greg");//创建字符串数组

    var name=[];//空数组

    var a = [[1,2],[3,4]];//多维数组

    关联数组:

    var lennon = Array ();

    lennon["name"] = "john";

    lennon["year"] = 1940;

    lennon["living"] =false;

    对象数组:

    var a={name:123};

    var b={age:456};

    var objarr = [a,b];

    //输出对象的名和值

    alert(Object.keys(objarr[0])+":"+objarr[0].name+","+Object.keys(objarr[1])+":"+objarr[1].age);

    读取设置数组的代码示例:

    var colors = ["red","blue","green"];//定义一个字符串数组

    alert(colors[0]);//显示第一项

    colors[2] = "black";//修改第三项

    colors[3] = "brown";//新增第四项

    注意:

     1、var colors = ["red","blue","green"];//创建一个包含3个字符串的数组

        colors.length =2;

        alert(color[2]); //undefined

     2、var colors = ["red","blue","green"];

      colors[99] ="black";  //在位置99添加一个颜色,其中3至98都是不存在,取值会报undefined。

      alert(colors.length);//100

    二、数组检测

    1、instanceof

    相关示例:

    if ( value instanceof Array){//检测值是否为数组

      //对数组执行某些操作

    }

    2 、Array.isArray()是ECMAScript5增加的方法,支持ie9、firefox 4+、safari 5+、opera 10.5+、Chome。

    if ( Array.isArray(value)){//检测值是否为数组

      //对数组执行某些操作

    }

    相关示例:

    var a = [1, 2, 3];

    typeof a;// "object"

    Array.isArray(a); // true

    上面代码中,typeof运算符只能显示数组的类型是Object,而Array.isArray方法可以对数组返回trueArray.isArray方法用来判断一个值是否为数组。它可以弥补typeof运算符的不足。

    三、数组转换

    示例一:

    var colors = ["red","blue","green"];

    alert(colors.tostring()); //red,blue,green

    alert(colors.valueof()); //red,blue,green

    alert(colors); //red,blue,green

    示例二:

    var a = [1, 2, 3];

    a.valueOf() // [1, 2, 3] valueOf方法返回数组本身。

    a.toString() // "1,2,3" 返回数组的字符串形式。

    var a = [1, 2, 3, [4, 5, 6]];

    a.toString() // "1,2,3,4,5,6"

    a.toLocaleString();  //1,2,3  当调用此方法时会创建一个数组值的以逗号分隔的字符串

    四、数组的相关操作

    1、分割符的使用:

      join方法以参数作为分割符,将所有数组成员组成一个字符串返回。如果不提供参数,默认用逗号分割。

      相关示例:

      var a = [1,2,3,4];

      a.john(' '); //  '1 2 3 4'

      a.john(' | '); //  "1 | 2 | 3 | 4"

      a.john(); // "1,2,3,4"

      如果数组成员是undefined或null或空位,会被转成空字符串。

      [undefined, null].join('#'// '#'

      ['a',, 'b'].join('-'// 'a--b'

      通过call方法,这个方法也可以用于字符串。

      Array.prototype.join.call('hello', '-'// "h-e-l-l-o"

      join方法也可以用于类似数组的对象。

      var obj = { 0: 'a', 1: 'b', length: 2 };

      Array.prototype.join.call(obj, '-'// 'a-b'

    2、增加数组:

      1、unshift() 方法向数组的开头添加一个或多个元素,并返回新的长度。 // 注意:会改变原数组

        相关示例:

        var a = ['a', 'b', 'c'];

          a.unshift('x'); // 4

                 a // ['x', 'a', 'b', 'c']

      2、slice()方法

      3、

    3、删除数组:

    4、修改数组:

    5、合并数组:

    综合示例:

    五、数组索引查找

    六、数组迭代

    七、数组排序

  • 相关阅读:
    sed点滴
    JS中使用window.open("url?param="+paramvalue)传递参数出现乱码
    java算法之插入排序法
    NodeJS中的事件模块EventEmitter
    转载: 通过Object.prototype.toString 精确判断对象的类型
    CommonJS的模块规范
    Windows Store App之文件选择器、文件保存器和文件夹选择器
    vue日期格式化
    Linux下安装Apache
    ubuntu 安装 ES 以及集群的搭建
  • 原文地址:https://www.cnblogs.com/john-sr/p/5839404.html
Copyright © 2011-2022 走看看