Array概述
     除了Object类型,最常用的类型;
     实质:有序的数据列表,
     特性:可以动态的调整数组的大小
  • 创建数组的两种方式
    • 构造函数创建方式  var arr = new Array()
    • 数字字面量方式   var arr = [ ];
      • var arr = [ , , ]         //创建3 或 2 项的数组  ---->不同浏览器的解释不一样   不要使用
  • 数组有length属性 ,可读取也可设置 。设置时,如果超出,给超出的部分赋值 undefined , 如果未超出会裁剪数组。

Array 数组方法:
  • 检测数组
    • instanceof操作符
if (value instanceof Array){
//如果是数组才能进入到这个位置
}
      • 如果一个网页中包含多个框架,数组是从另外一个框架中传入的,那么 instanceof就变得不可靠了  (一般不会出现这种情况)
    • isArray()
      • ECMAScript 5 中为 解决 instanceof  有可能不可靠的问题添加了  isArray()方法
        • 兼容性  IE 9++
  • 转换方法
    • 和所有对象一样会有 toLcaleString()、toString()、valueOf()方法,
      • toString( )  返回由数组中的每个值得字符串形式拼接而成的一个以逗号分隔的字符串。

        --> 实际上,为了创建这个字符串会调用数组每一项的toString()方法。
      • valueOf()  返回的还是数组   一般是转换成能使用的值之后再交给其他方法使用(隐式)
      • toLocalString()    其他对象的都是先调用valueOf方法转换成可使用的值 然后调用toString()方法

        但是在数组中 先调用toLocaleString()方法
    • join()
var colors = ["red", "green", "blue"];
alert(colors.join(",")); //red,green,blue
alert(colors.join("||")); //red||green||blue
      • 作用:将数组的每一项用 分隔符字符(参数) 链接起来
      • 参数:只能有一个,如果不传参数或者传入undefined  则以“,”链接
      • 兼容:IE7--版本时 会使用字符串”undefined“  作为分隔符
  • 栈方法
    • push()
      • 作用:将数据逐个 推入 数组中
      • 参数:任意个数
      • 返回值:修改后的数组的长度
    • pop()
      • 作用:从数组的末尾移除最后一项,减少数组的长度(length值)
      • 返回值:移除的那一项的值
  • 队列方法
    • shift()
      • 作用:移除数组第一项,并改变数组的长度
      • 返回值:移除的那一项的值
    • unshift()
      • 作用:在数组的前端添加一项值,
      • 参数:任意数量 ,中间用“,”隔开
      • 返回值:修改后数字的长度
var colors = new Array(); //ظॺᅃ߲数ፇ
var count = colors.unshift("red", "green"); //ླྀ෇ଇၜ
alert(count); //2
count = colors.unshift("black"); //ླྀ෇ଷᅃၜ
alert(count); //3
var item = colors.pop(); //ൽڥፌࢫᅃၜ
alert(item); //"green"
alert(colors.length); //2
  • 兼容:IE7--  unshift( )   方法总是返回undefined,而不是数组额长度
  • 排序方法
    • reverse()

      • 作用:反转数组项的顺序
    • sort()
      • 原理:每个数组项会先调用 toString()方法,然后比较字符串(升序排列)期内可以传递回调函数
var values = [0, 1, 5, 10, 15];
values.sort();     //即便数组的每一项都是数值,也会按照字符串的升序排列
alert(values); //0,1,10,15,5
      • 参数:回调函数
      • 函数中返回一个数,正数 就是升序    负数就是降序排列 操作方法
    • concat()   基于原来的数组,将参数推入原数组中
      • 参数 :  可以是一个或多个数组,

        如果不是一个数组,就会被简单的添加到数组结尾
    • slice()
      • 作用:基于当前数组中的一项或者多项创建一个新数组,
      • 参数:当传入一个参数的时候,从该参数的位置,截取到最后

                 当传入两个参数的时候,从第一个参数位置开始,到第二个参数位置(但是最后这个位置的项取不到);

                 注意:传参允许传负数 (但是:当结束位置小于开始位置的时候,返回空数组)
      • 返回值:截取到的数组
var colors = ["red", "green", "blue", "yellow", "purple"];
var colors2 = colors.slice(1);
var colors3 = colors.slice(1,4);
      • splice()最强大的数组方法
        • 删除:当两个参数的时候,第一个参是位置,第二个参数是个数
        • 替换:之后的参数,都会插入到删除的数组项的位置
        • 返回值:是一个有删除项组成的数组
    • 位置方法
      • indexOf()

        • 作用:从数组的开头查找 “ 参数一 ”所在的位置
        • 参数:第一个参数,要查找的项

          第二个参数,查找起始的位置
        • 返回值:查找项坐在的位置,没查找到返回 - 1;
        • 兼容:IE9++
      • lastIndexOf()
        • 作用:从数组的结尾开始查找 “ 参数一 ”所在的位置
        • 参数:第一个参数,要查找的项

          第二个参数,查找起始的位置
        • 返回值:查找项坐在的位置,没查找到返回 - 1;
        • 兼容:IE9++
    • 迭代方法
      • every():对数字中的每一项运行给定的函数,如果该函数对每一项都返回true,才返回true,
      • filter()  :对数组中的每一项运行给定的函数,返回该函数会返回true的项组成的数组
      • forEach():对数组中的每一项运行给定的函数,没有返回值
      • map():对赎罪中的每一项运行给定的函数,返回每次调用的结果组成的数组
      • some():对数组中的每一项运行给定的函数,如果函数对任一项返回true,就返回true;
    • 并归方法  ECMAScript 5  才添加的方法
      • reduce()
      • reduceRight()

JavaScript之数组方法整理的更多相关文章

  1. Ruby数组方法整理

    数组方法整理 方法列表: all().any().none()和one():测试数组中的所有或部分元素是否满足给定条件.条件可以是语句块中决定,也可以是参数决定 append():等价于push() ...

  2. JavaScript Array 数组方法汇总

    JavaScript Array 数组方法汇总 1. arr.push() 从后面添加元素,返回值为添加完后的数组的长度 var arr = [1,2,3,4,5] console.log(arr.p ...

  3. JS数组方法整理(附使用示例)

    整理目前所用过的数组方法,学习了新增的es6方法. 1.arr.push() 从后面添加元素,返回值为添加完后的数组的长度 let arr = [1,2, is 8.3,4,5] console.lo ...

  4. JavaScript Array数组方法详解

    Array类型是ECMAScript中最常用的引用类型.ECMAScript中的数据与其它大多数语言中的数组有着相当大的区别.虽然ECMAScript中的数据与其它语言中的数组一样都是数据的有序列表, ...

  5. JavaScript常用数组方法

    JavaScript数组方法有以下这些: forEach() 方法对数组的每一个元素执行一次提供的函数. map() 方法创建一个新数组,其结果是该数组都执行一次函数,原函数保持不变. filter( ...

  6. Javascript中数组方法reduce的妙用之处

    Javascript数组方法中,相比map.filter.forEach等常用的迭代方法,reduce常常被我们所忽略,今天一起来探究一下reduce在我们实战开发当中,能有哪些妙用之处,下面从red ...

  7. JavaScript的数组方法(array)

    数组方法: 1. concat()  合并数组 2. join()  将数组的元素拼接成字符串,并指定分隔符 3. push()  往数组末尾添加一个元素,并返回新的数组的长度 4. reverse( ...

  8. 【JavaScript】数组方法之基础方法

    数组方法之基础方法 Array 对象属性 属性 描述 constructor 返回对创建此对象的数组函数的引用. length 设置或返回数组中元素的数目. prototype 使您有能力向对象添加属 ...

  9. JavaScript字符串与数组方法整理

    字符串(String)的方法: 代码后面的都是返回值 var str = "atusdgafsvg"; var str1 = "123456789"; var ...

随机推荐

  1. php代码规范—2

    如何写出好的 PHP 代码? 在本文中,我们将探讨一些良好的编程习惯,这将帮助你避免代码中的缺陷. 1- 编写模块化代码 良好的PHP代码应该是模块化代码.PHP的面向对象的编程功能是一些特别强大的工 ...

  2. Virtual Box下配置Host-Only联网方式详解

    其实网络这类相关的文章很多,我只是想结合自己的实际情况,把我的经验写下来,给那些需要的人们吧. 主机:windows 7 虚拟机:CentOS6.0 VirtualBox:4.2.0 虚拟机在安装好之 ...

  3. ThinkPHP v3.2.3 数据库读写分离,开启事务时报错:There is no active transaction

    如题:ThinkPHP v3.2.3 数据库读写分离,开启事务时报错: ERR: There is no active transaction 刚开始以为是数据表引擎不对造成的,因为 有几张表的引擎是 ...

  4. 【Alpha版本】 第三天 11.9

    一.站立式会议照片: 二.项目燃尽图: 三.项目进展: 成 员 昨天完成任务 今天完成任务 明天要做任务 问题困难 心得体会 胡泽善 注册界面的实现 填写招聘时用户填写各个日期到可以使用工具方便选择日 ...

  5. css-单位%号-background-size-background-position-遁地龙卷风

    (-1)写在前面 我用的是chrome49,这篇是为后续做准备.重要性的调整以及毕业资料的整体导致最近没看JQuery和H5特效,以后只能晚上看了. (0)准备 div长宽都为300px,我们一张大小 ...

  6. parse_str怎么用php

    1.需求 了解parse_str的用法 2.作用 parse_str接受2个参数,把第一个参数查询字符串解析到第二个参数数组当中,会覆盖数组中原来的值 parse_str($_SERVER['QUER ...

  7. python虚拟机中的异常流控制

    异常:对程序运行中的非正常情况进行抽象.并且提供相应的语法结构和语义元素,使得程序员能够通过这些语法结构和语义元素来方便地描述异常发生时的行为. 1.Python中的异常机制: 1.1Python虚拟 ...

  8. Servlet 之 HttpServlet

    package cn.jiemoxiaodi.http; import java.io.IOException; import javax.servlet.GenericServlet; import ...

  9. 此地址使用了一个通常用于网络浏览以外的端口。出于安全原因,Firefox 取消了该请求

    FirFox打开80以外的端口,会弹出以下提示: “此地址使用了一个通常用于网络浏览以外的端口.出于安全原因,Firefox 取消了该请求.”. 解决方法如下: 在Firefox地址栏输入about: ...

  10. 去掉UITableView多余的空白行分割线

    一.问题描述 在学习和开发中经常会遇到下面的问题,UITableView的UITableViewCell很少或者没有时,但UITableView有很多的空白行分割线.如下图: 如何去掉UITableV ...