数组

引用数据类型:object:new Array  new String  new Date  new Function  new RegExp  new Image。。。

001、什么是一个数组?

  一个装数据的容器

002、数组里面装的是什么

  数组里面一般情况下存放相同的数据  但是也可以存放不同类型的数据

003、如何创建一个数组

  如果传递一个参数则代表的是数组长度 。var arr = new Array(30);

  如果传递的是两个或多个则代表的是参数。var arr = new Array(30,2);

  1、构造函数方法

    var 变量名 = new Array();   

  2、关键字

    var 变量名 = Array( );

    var arr = Array(30,2);

  3、字面量

    var arr= [ ];

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

数组的长度和下标的关系。数组的长度减一就是数组最后一个数据的下标。

用for循环给数组赋值

 var arr = [];
  for(var i=10;i<=20;i++){
  arr[arr.length] = i;
}

004、数组的基本方法

  for in循环:只用于数组循环

    for(var i in 对象){

    }

for(var i in arr){
  conlose.log(arr[i]);  
}

  如何判断一个对象是不是一个数组?

  instanceof:判断一个对象是不是另一个对象创建出来的

  对象  instanceof Array;

var arr = [10,20,40,50,60];
console.log(arr instanceof Array);
function fn(){
  console.log(arguments instanceof Array) ;
}
fn();    //   argements是伪数组

005、数组常见的API

  a、push:尾部添加

    返回值:数组的最新长度

    原数组会发生改变

var arr = [10,20,30];
var newArray = arr.push(40);
console.log(arr,newArray); // [10, 20, 30, 40] 4

  b、unshift:头部添加

    返回值:数组的最新长度

    原数组会发生改变

var arr = [10,20,30]
var newArray = arr.unshift(40);
console.log(arr,newArray); //[40,10,20,30] 4

  c、pop:尾部删除

    返回值:删除掉的尾部的那个数字

    原数组会改变

var arr = [10,20,30];
var newArr = arr.pop();
console.log(arr,newArr)

  d、shift:头部删除 

    返回值:删除掉的尾部的那个数字

    原数组会改变

var arr = [10,20,30];
var newArr = arr.shift();
console.log(arr,newArr)

  e、sort:排序

    从小到大排序

    如果这个sort没有传递参数的时候是按照ASCII码进行排序的

    如果传递了回调参数,则进行按照回调中的方法进行排序

    回掉函数:函数的参数是一个函数

var arr = [6,24,9,42,0,32];
arr.sort(function(a,b){
    return a-b
});
console.log(arr)
var arr = [1,2,3,4,5,6,7,8,9];
arr.sort(function(){
    return Math.random()-0.5;
})
    console.log(arr)

  f、reverse():反转

原文地址:https://www.cnblogs.com/jiangw/p/8328090.html