JavaScript数组



    //测试数组的所有方法。

    /*
    *   length
    *   push()
    *   shift()
    *   unshift()
    *   concat()
    *   slice()
    *   reverse()
    *   join()
    *   toString()
    *   sort()
    *   map()
    *   filter()
    *   Array.isArray()
    *   Array.from()
    *   Array.of()
    *   copyWithin()
    *   find()
    *   findIndex()
    *   fill()
    *   includes()
    *   forEach()
    *   some()
    *   indexOf()
    *   ervery()
    *   lastIndexOf()
    **/


    var testArray = [1,2,3,4,5,6,7,8];
    console.log(testArray.length+`返回数组的长度`);

    console.log(testArray.push(9)+`push方法返回数组的长度,在数组尾部追加元素`);

    console.log(testArray.shift() +`删除数组的第一个元素,并返回该值,同时会修改原数组`); 

    console.log(testArray.unshift('添加元素1','添加元素2')  +`在数组的头部添加元素,返回数组的长度,同时修改原数组`)

    console.log( testArray.concat('链接元素1' ,'链接元素2') +`拼接数组,不会修改原来数组,而是返回一个拼接后的数组副本`)

    //这个时候testArray 是原来的数组,没有concat中的拼接元素。

    console.log(testArray.slice(1,4) +`-->返回切片数组 ,包含开始不包含结束 ,不会修改原来的数组`)

    var nameArray= [ 's' , 'm' , 'i' , 't' , 'h'];
    console.log(nameArray.join('') +`分隔数组,返回一个字符串。如果join中不指定分隔符,默认用"," 分割`)

    var arr = [ 1,2,3,4,5,6,7];
    console.log(arr.toString())

    //sort()数组简单的排列、


    /******************************************************************/

    var mapArray = [1,2,3,4,5,6,7,8,9];
    mapArray.map( function( item , index){
        //map可以循环数组。
        //item为数组的每一项
        //index 为数组的下标。
    })


    var filterArray = [2,1,4,5,6,3,21];
    filterArray.filter( function(item , index){
            //过滤数组,返回数组中符合过滤条件的项
            if(item > 20){
                console.log(typeof item);
                return item;
            }
    })


    //检测一个对象是否实数组的几种方法
    console.log(Array.isArray([12,3,4]))
    //typeof 
    //instanceof Array
    //Object.prototype.toString.call(obj) === '[object Array]';   
    //toString.apply(v) === '[object Array]';

    //ES6 提供的数组方法
    Array.from() /*用来将类数组转换为数组。常见的类数组有 通过document.querySelector()找到的NodeList和函数
                *  的arguments对象。都属于类数组。
                *  Array.from({length:3})  将会转换为 ['undefined' , 'undefined' , 'undefined']
                *  还可以将字符串转换为数组,返回字符串的长度    
                **/

    Array.of() /*  用来将一组值转换为数组。这个方法的作用是主要弥补new Array() 这个方法的不足造成的差异
                */  
                


    find( ()=>{} )     /* 用来找出第一个符合条件的数组成员,然后返回该成员。如果没有符合条件的,则返回undefined */

    findIndex( ()=>{} ) /* 找出数组符合条件的项,如果没有找到符合条件的项,那么会返回-1*/

    fill() /*用一个给定的值,来填充数组,fill接受三个参数 
            *fill( item , start ,end) item:要填充的项,start 开始位置,end 结束位置,不包括开始位置
            */  


    includes() /*方法返回一个布尔值,表示某个数组是否包含给定的值*/

    forEach( (item , index )=>{} ) //数组遍历
    some( (item , index)=>{} )      //会遍历数组,如果数组当中的某一项符合条件,那么就会返回true,同时停止遍历。
    ervery( (item , index)=>{} )    /*会遍历数组,如果数组中所有的项都符合条件,那么就会返回true
                                    * 如果有一项不符合条件,那么就会返回false,同时停止遍历。
                                    */

    indexOf() //从数组头部开始寻找,检测数组中是否包含该值(执行严格检测) 如果有 返回下标,如果没有返回-1;
    lastIndexOf() //从数组尾部开始寻找,如果能匹配到该值,则返回改值在数组中的下标,如果没找到返回-1












你可能感兴趣的:(JavaScript数组)