0.创建

  Javascript创建数组的基本方式有两种。第一种是使用Array构造函数。

  var colors = new Array();

  var colors = new Array(20);

  var colors = new Array("red","blue","green");

  另外一种是省略掉new符号:

  var colors  = Array(3);

  var colors = Array("Greg");

1.检测数组

  if(value instanceOf Array){}

  if(Array.isArray(value)){}

2.转换方法

  toLocalString() 把数组转换为本地数组,并返回结果。

  toString() 把数组转换为字符串,并返回结果。

  valueOf() 返回数组对象的原始值。

  join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。

  示例:

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

  console.log(colors.toString());            //red,blue,green

  console.log(colors.valueOf());             //["red", "blue", "green"]

  console.log(colors);                          //["red", "blue", "green"]

  console.log(colors.join(","));              //red,blue,green

  console.log(colors.join("||"));            //red||blue||green

3.栈方法

  push() 向数组的末尾添加一个或更多元素,并返回新的长度。

  pop() 删除并返回数组的最后一个元素。

  示例:

  var colors = new Array();

  var count = colors.push("red", "green");

  console.log(count);                             // 2

  count = colors.push("black");

  console.log(count);                            //3

  var item = colors.pop();

  console.log(item);                             //black

  conosole.log(colors);                         //["red", "green"]

4.队列方法

  shift() 删除并返回数组的第一个元素。和push()一起组成数组的前端删除,末端插入的队列。

  unshift() 向数组的开头添加一个或更多元素,并返回新的长度。与pop()一起组成前端插入,末端删除的队列。

  示例:

  var colors = new Array();

  var count = colors.push("red", "green");

  console.log(count);                   // 2

  var  item = colors.shift();

  console.log(item);                    //red

  console.log(colors);                 //["green"]

  var count = colors.unshift("red", "blue");

  console.log(count);                 //3

  console.log(colors);                //["red", "blue", "green"]

5.重排序方法

  reverse() 颠倒数组中元素的顺序。

  sort() 对数组的元素进行排序。

  示例:

  var values = [1,2,3,35,5];

  values.reverse();

  console.log(values); //[5, 35, 3, 2, 1]

  values.sort();

  console.log(values); //[1, 2, 3, 35, 5]

  function compare(v1,v2){

    if(v1 < v2)return -1;

    else if(v1 > v2) return 1;

    else return 0;

  }

  values.sort(compare);

  console.log(values); //[1, 2, 3, 5, 35]

6.操作方法

  concat() 连接多个数组。

  slice() 基于当前数组中的一个或多个项创建新数组。

  splice() 向数组中部插入项。

  示例:

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

  var colors2 = colors.concat("yellow", ["black", "brown"]);

  console.log(colors);      //["red", "green", "blue"]

  console.log(colors2);    //["red", "green", "blue", "yellow", "black", "brown"]

  var colors3 = colors2.slice(1);

  var colors4 = colors2.slice(1,2);

  console.log(colors3);   //["green", "blue", "yellow", "black", "brown"]

  console.log(colors4);   //["green"]

  //splice删除

  var removed = colors2.splice(0,2);

  console.log(removed);   //["red", "green"]

  console.log(colors2);     //["blue", "yellow", "black", "brown"]

  //splice插入

  var inserter =  colors2.splice(1, 0, "orange", "purple");

  console.log(inserter);    //[]

  console.log(colors2);    //["blue", "orange", "purple", "yellow", "black", "brown"]

  //splice替换

  var replacer = colors.splice(1, 1, "red", "green");

  console.log(replacer);    //["orange"]

  console.log(colors2);     //["blue", "red", "green", "purple", "yellow", "black", "brown"]

7.位置方法

  indexOf() 从数组开头开始向后查找。

  lastIndexOf() 从数组的末尾开始向前查找。

  示例:

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

  console.log(colors.indexOf("green"));            //1

  console.log(colors.indexOf("green", 2));        //4

  console.log(colors.lastIndexOf("green"));      //4

  console.log(colors.lastIndexOf("green", 3));  //1

  console.log(colors.indexOf("yellow"));           //-1

8.迭代方法

  every() 对数组中的每一项运行给定的函数,如果函数的每一项都返回true,则返回true。

  filter() 对数组中的每一项运行给定的函数,返回该函数返回为true的项组成的新数组。

  forEach() 对数组中的每一项运行给定的函数。这个方法没有返回值。

  map() 对数组中的每一项运行给定的函数,返回每次函数调用的结果组成的新数组。

  some() 对数组中的每一项运行给定的函数,如果函数对任一项返回true,则返回true。

  示例:

  var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];

  var everyResult = numbers.every(function(item, index, array){return item > 2;});

  console.log(everyResult); //false

  var someResult = numbers.some(function(item, index, array){return item > 2;});

  console.log(someResult); //true

  var filterResult = numbers.filter(function(item, index, array){return item > 2;});

  console.log(filterResult); //[3, 4, 5, 4, 3]

  var mapResult = numbers.map(function(item, index, array){return item *2;});

  console.log(mapResult); //[2, 4, 6, 8, 10, 8, 6, 4, 2]

  console.log(numbers); //[1, 2, 3, 4, 5, 4, 3, 2, 1]
  numbers.forEach(function(item, index, array){item+2;});

9.归并方法

  ECMAScript5新增的方法:

  reduce() 迭代数组中的每一项,然后构建最终的返回值。从第一项开始。

  reduceRight() 迭代数组中的每一项,然后构建最终的返回值。从最后一项开始。

  示例:

  var values = [1,2,3];

  var sum = values.reduce(function(prev, cur, index, array){return prev+cur;});

  console.log(sum);   //6

  var sumRight = values.reduceRight(function(prev, cur, index, array){return prev+cur;});

  console.log(sumRight );   //6

----完

javascript Array method总结的更多相关文章

  1. JavaScript : Array assignment creates reference not copy

    JavaScript : Array assignment creates reference not copy 29 May 2015 Consider we have an array var a ...

  2. JavaScript Array.map

    Array.prototype.map() History Edit This article is in need of a technical review. Table of Contents ...

  3. JavaScript Array 对象

    JavaScript Array 对象 Array 对象 Array 对象用于在变量中存储多个值: var cars = ["Saab", "Volvo", & ...

  4. JavaScript Array(数组)对象

    一,定义数组 数组对象用来在单独的变量名中存储一系列的值. 创建 Array 对象的语法: new Array(); new Array(size); new Array(element0, elem ...

  5. Javascript Array.prototype.some()

    当我们使用数组时,查找数组中包含某个特殊的项是非常常见的动作.下面例子是一个简单的实现: 01 planets = [ 02     "mercury", 03     " ...

  6. [Javascript ] Array methods in depth - sort

    Sort can automatically arrange items in an array. In this lesson we look at the basics including how ...

  7. Javascript Array 方法整理

    Javascript Array 方法整理 Javascript 数组相关方法 说明 大多数其它编程语言不允许改变数组大小,越界访问索引会报错,但是 javascript不会报错,不过不建议直接修改a ...

  8. javascript array操作

    首先来看一下怎么判断一个对象是不是数组: 1.Array.isArray(obj) 调用数组的isArray方法 2.obj instanceof Array 判断对象是否是Array的实例 3.Ob ...

  9. JavaScript Array 数组方法汇总

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

随机推荐

  1. 使用adb命令启查看已安装的Android应用的versionCode、versionName

    列出已经安装的应用 adb shell pm list package C:\Users\CJTDEV003>adb shell pm list package package:com.sams ...

  2. Azure Storage Blob文件重命名

    Azure Storage的SDK并没有提供文件重命名的方法,而且从StorageExplorer管理工具里操作修改文件名的时候也有明确提示: 是通过复制当前文件并命名为新文件名再删除旧文件,不保存快 ...

  3. TMOS_Order_of_Operations_v0.1

  4. Dialog共通写法(一个button)

    一个button的: package jp.co.hyakujushibank.view import android.app.Dialogimport android.content.Context ...

  5. bzoj3743 [Coci2015]Kamp 常州模拟赛d6t2

    3743: [Coci2015]Kamp Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 484  Solved: 229[Submit][Status ...

  6. P1736 创意吃鱼法 (动态规划)

    题目描述 回到家中的猫猫把三桶鱼全部转移到了她那长方形大池子中,然后开始思考:到底要以何种方法吃鱼呢(猫猫就是这么可爱,吃鱼也要想好吃法 ^_*).她发现,把大池子视为01矩阵(0表示对应位置无鱼,1 ...

  7. linux文件夹作用

    linux下的文件结构,看看每个文件夹都是干吗用的/bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基 ...

  8. 观光公交(codevs 1139)

    题目描述 Description 风景迷人的小城 Y 市,拥有n 个美丽的景点.由于慕名而来的游客越来越多,Y 市特意安排了一辆观光公交车,为游客提供更便捷的交通服务.观光公交车在第0 分钟出现在1号 ...

  9. MongoDB_语法命令

    可以通过MongoDB shell 来连接MongoDB服务: ./mongo   进入交互 数据库-->集合-->文档 几个文档就组成了集合,可以设置固定大小的集合,集合就会有过期机制, ...

  10. fmt 包中的函数和方法

    / Fprintf 将参数列表 a 填写到格式字符串 format 的占位符中// 并将填写后的结果写入 w 中,返回写入的字节数func Fprintf(w io.Writer, format st ...