1:Array对象用于在单个变量中存储多个值
typeof(arrArr) 'object'
var arr1 = [];//创建一个空数组
eg:数组是个引用类型
var a = [1,2,3];
var b = [1,2,3];
console.log(a == b);
//false
构造函数创建
var arr1 = new Array();//创建空数组
var arr2 = new Array(10);//创建一个长度为10的数组
new Array(-1); //Uncaught RangeError: Invalid array length(…)
new Array(undefined) //[undefined]
var arr3 = new Array(5,4,3,2,1);//创建数组并初始化
es6 Array.of 创建数组
Array.of()
//[]
Array.of(undefined)
//[undefined]
Array.of(1)
//[1]
Array.of(3)
//[3]
Array.of(1, 2)
//[1, 2]
Array.of(-1)
//[-1]
2:length 属性
var arrArr = [1,2,3,4,5];
console.log(arrArr.length); //5
数组的最后一项是length-1
console.log(arrArr[arrArr.length-1]) //5
3:数组的遍历
var arrArr = [1,2,3,4,5];
for (var i = 0; i < arrArr.length; i++) {
  //arrArr[i]....
};
4:数组中常见的方法
(1)删除数组的最后一项,返回的是删除的值
pop()
eg:
var arr = ["1","2"];
var arrv=arr.pop();
console.log(arr);
console.log(arr2);
//["1"]
//2
(2) 向数组的最后添加值,返回的是新数组的长度
push()
eg:
var arr = ["1","2"];
var arrv=arr.push("3","4","5");
console.log(arr);
console.log(arrv);
//["1", "2", "3", "4", "5"]
//5
(3) 删除数组的第一项,返回的是删除的值
shift()
eg:
var arr = ["1","2"];
var arrv=arr.shift();
console.log(arr);
console.log(arrv);
//["2"]
//1
(4) 向数组的开头添加值,返回的是新数组的长度
unshift()
eg:
var arr = ["1","2"];
var arrv=arr.unshift("3","4","5");
console.log(arr);
console.log(arrv);
//["3", "4", "5", "1", "2"]
//5
(5)concat()
合并两个数组,原数组不变。concat是把arr1和arr2合并为一个新数组返回
eg:
var arr1 = ["1","2"];
var arr2 = ["3","4"];
var newarr=arr1.concat(arr2,["5","6"]);
console.log(arr1);
console.log(arr2);
console.log(newarr);
//["1", "2"]
//["3", "4"]
// ["1", "2", "3", "4", "5", "6"]
(6)slice英文意思是:切成片,切下,划分
slice()
arrayObject.slice(start,end)
从已有的数组中返回选定的元素,从下标为start的元素开始,若为负数,表示从最后开始,-1表示最后一项,
到下标为end之前的一项

eg:
var arr1 = ["1","2","3","4","5"];
var arr2 = arr1.slice(1,4);
console.log(arr1);
console.log(arr2);
//["1", "2", "3", "4", "5"]
//["2", "3", "4"]
(7)splice()
从数组中添加删除项,返回被删除的项目。
arrayObject.splice(index,howmany,item1,.....);
index规定的是添加删除项的位置,若为负数,表示从最后开始,-1表示最后一项
howmany表示的是要删除的项目的数量。为0表示的是不删除。只是添加
item1,.....向数组中添加的新项(可选)
eg:
var arr = ["A","B","C","D","E","F","G"];
var newarr=arr.splice(2,4,"1");
console.log(arr);
console.log(newarr);
//["A", "B", "1", "G"]
//["C", "D", "E", "F"] 被删除的项
eg:
var arr = ["A","B","C","D","E","F","G"];
var newarr=arr.splice(2,0,"1");
console.log(arr);
console.log(newarr);
//["A", "B", "1", "C", "D", "E", "F", "G"]
//[] 表示的是删除0项
eg:
var arr = ["A","B","C","D","E","F","G"];
var newarr=arr.splice(2,3); //只删除不添加
console.log(arr);
console.log(newarr);
//["A", "B", "F", "G"]
//["C", "D", "E"]
(8)reverse()
颠倒数组中元素的顺序(改变的是原数组)
arrayObject.reverse();
var arr = ["A","B","C","D","E","F","G"];
var arr1=arr.reverse();
console.log(arr);
console.log(arr1);
//["G", "F", "E", "D", "C", "B", "A"]
//["G", "F", "E", "D", "C", "B", "A"]
(9)sort()
对数组的元素进行排序(默认是按照字符集的格式进行排序)
sortby规定排序的顺序,必须是函数
arrayObject.sort(sortby);
var arr = [1,3,2,4,6,9];
arr.sort();
console.log(arr);
//[1, 2, 3, 4, 6, 9]
sortby规定排序的顺序,只能是个函数。两参数的差值小于0,则表示a必须出现在b前面,否则在b后面

若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。
var arr = [2,5,4,23,2,45];
arr.sort(function(a,b){
  if(a < b){
    return -1;  //a-b返回一个小于0.a在b的前面。a比b小。升序排列
  }else if(a > b){
    return 1;  //a-b返回一个大于0.说明a比b大。升序排列。a在b的后面
  }else if(a == b){
    return 0; //a-b返回一个等于0.说明a等于b。
  }
});
console.log(arr);
//[2, 2, 4, 5, 23, 45]
(10)join()
把数组中的所有元素放入一个字符串中
separator为分隔符
arrayObject.join(separator)
eg:
var arr = [1,2,3,4,5,6,7];
var str = arr.join(",");
console.log(str);
//1,2,3,4,5,6,7

javascript常见的数组方法的更多相关文章

  1. javascript常见操作数组的方法

    在 JavaScript 中,判断一个变量的类型尝尝会用 typeof 运算符,在使用 typeof 运算符时采用引用类型存储值会出现一个问题,无论引用的是什么类型的对象,它都返回 "obj ...

  2. javascript里的几种常见的数组方法

    Array()的几种方法 1.splice(2,3,4)删除数组中任意项(三个参数). 2.splice(1,3)删除从第一项开始的往后三项(两个参数).(splice可以结合pop(),unshif ...

  3. Javascript中遍历数组方法的性能对比

    Javascript中常见的遍历数组的方法 1.for循环 for(var i = 0; i < arr.length; i++) { // do something. } 2.for循环的改进 ...

  4. javascript中常用数组方法详细讲解

    javascript中数组常用方法总结 1.join()方法: Array.join()方法将数组中所以元素都转化为字符串链接在一起,返回最后生成的字符串.也可以指定可选的字符串在生成的字符串中来分隔 ...

  5. Javascript中的数组方法总结

    1.concat():将两个或多个数组合并成一个数组 arrayObject.concat(arrayX,arrayX,......,arrayX),返回一个新的数据,arrayX可以是数值也可以是数 ...

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

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

  7. JavaScript 基础(六) 数组方法 闭包

    在一个对象中绑定函数,称为这个对象的方法.在JavaScript 中,对象的定义是这样的: var guagua = { name:'瓜瓜', birth:1990 }; 但是,如果我们给瓜瓜绑定一个 ...

  8. JS基本功 | JavaScript专题之数组 - 方法总结

    Array.map() 1.   map() 遍历数组 语法: let new_array = arr.map(function callback(currentValue, index, array ...

  9. javascript之操作数组方法

    掌握如何操作数组,会让你的开发变得更加高效 1.栈和队列方法(以下四个方法都改变原数组) arr.push() //接受任意类型的参数,逐个添加到数组的末尾,并返回数组的长度 改变原数组 arr.po ...

随机推荐

  1. POJ1286 Necklace of Beads

    Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 8263   Accepted: 3452 Description Beads ...

  2. BZOJ1082_栅栏_C++

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1082 题解:http://www.cnblogs.com/hadilo/p/5924546.h ...

  3. Linux搭建JavaEE开发环境与Tomcat——(十)

    服务器通过ip地址访问是不需要备案的,如果通过域名访问的话才需要备案. 1.安装Mysql 在CentOS7上安装MySQL时,出现了以下的提示: 原因是: CentOS7带有MariaDB而不是my ...

  4. nginx启动脚本(class练习)

    说明:使用类的方式编写程序启动脚本(练习) 1 #!/usr/bin/env python import sys import os from subprocess import Popen,PIPE ...

  5. 工作技能===开发不改bug?给你支个招

    在测试过程中,不免会遇到开发人员因为一些原因不想修改个别bug的情况.那一般遇到这种问题时,我们该如何去推进开发修改bug呢? 我们先来分析下到底会有哪些原因会导致开发不修改bug 1. 开发与测试对 ...

  6. Linux 2.6内核Makefile浅析【转】

    转自:http://blog.csdn.net/tommy_wxie/article/details/7280463 版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[-] 概述 ...

  7. 设计模式之笔记--简单工厂模式(Simple Factory)

    简单工厂模式(Simple Factory) 类图 描述 简单工厂: 一个抽象产品类,可以派生多个具体产品类: 一个具体工厂类: 工厂只能创建一个具体产品. 应用场景 汽车接口 public inte ...

  8. Winform常用操作

    >> c#操作cmd命令 using System.Diagnostics; private string RunCmd(string command) { //实例一个Process类, ...

  9. libev 学习使用

    libev 简单的I/O库.  a high performance full featured event loop written in c libev 的大小也比 libevent 小得多并且自 ...

  10. java callable future futuretask

    Runnbale封装一个异步运行的任务,可以把它想象成一个没有任何参数和返回值的异步方法.Callable和Runnable相似,但是它有返回值.Callable接口是参数化的类型,只有一个方法cal ...