天天看点

JS基础知识之数组

  1. 数组也是一个对象,也是用来存储数据的,使用数字来作为索引来操作元素。
    创建一个数组对象:var arr = new Array( );
       数组有自带属性length 
               
  2. 使用字面量来创建数组:
    语法:var arr =  [  ] ;
    	可以在创建时就指定数组中的元素
    	//也可以使用构造函数来创建,	var arr = new Array(10,20);
               
    区别: var arr2 = new Array(10); 这个表示创建一个length为10的数组。一遍采用字面量的方式来创建。
  3. push方法:往数组末尾添加一个或多个元素,并返回数组的长度
  4. pop 方法: 删除并返回数组的最后的一个元素。
  5. unshift方法:向数组的开头添加一个或多个元素,并且返回最新的长度
  6. shift方法:删除并且返回数组的第一个元素
  7. 数组的遍历:

    forEach( ) 方法:

    arr.forEach( function( value,index,obj ){

    });

    第一个参数:就是当前正在遍历的元素

    第二个参数:就是元素的索引

    第三个参数:就是正在遍历的数组

  8. 回调函数的定义:由我们创建但是不由我们调用的
  9. slice():从某个已有的数组提取出指定的元素
    语法:(包含开始索引,不包括结束索引,可以传递一个负值则从后往前结算)
    	arrayObject.slice( start,end );
               
  10. splice():删除数组中的指定元素,被删除的元素作为返回值返回,

    第一个参数:表示开始删除的位置

    第二个参数:表示删除的数量

    第三个及以后参数:可以传递一些新的元素,这些元素将会自动插入到开始索引的前面

  11. concat():可以连接两个和多个数组,并且将新的数组返回该方法不会改变原数组。

    join(“ string ”):该方法可以将所有的数组转换成一个字符串,并且返回。可以指定一个字符串参数来作为连接符

    sort(); 对数组进行排序。

    对数字进行排序时可能会出现错误,可以利用回调函数来自己指定排序的规则。

    arr.sort( function(a,b){
       		return 1;
       } )
       浏览器会根据回调函数的返回值来确定元素的顺序,
       如果返回值大于0,则元素会交换位置
       如果返回值小于0,则元素位置不变
       如果返回值等于0,则认为两个元素相等,也不交换位置
       arr.sort(function(a,b){
       		if(a>b) return 1;
       		else return -1;
       })
               
  12. 函数的方法:

    call()和 apply():可以为函数指定第一个参数

    区别:call方法可以把实参直接写在对象之后,依次传递

    apply()则需要把实参封装在一个数组中统一传递

  13. 在调用函数时,浏览器每次都会传入两个隐含参数
    1,this
       2,a'rguments: 是一个像数组的对象 ,调用函数时所传入的实参都会封装到arguments中,可以通过索引和lenght来操作元素
       arguments.callee  这个属性对应一个函数对象,就是当前正在指向的函数对象