JavaScript基础 数组

1、arr.length 返回数组的长度 可读可写

var arr = [ 5,58,7,9,6 ];
console.log( arr.length ) 结果:5
arr.length = 3 ===>[ 5,58,7 ] 可以改变数组长度

把数组变成空
arr.length = 0;  这种方法比较好  不用重新给一个新的数组 不用被回收原来的数组
arr = [];

2、push() 改变原数组
功能:往原数组的后面添加新的数据
返回新数组的长度

var arr = [ 5,58,7,9,6 ];
var x = arr.push( '是是旭' );
console.log( arr ) ==>5,58,7,9,6,是是旭
console,log( x ) ===> 6;

3、unshift()往前面添加新数据
功能:往原数组的添加添加新的数据
返回新数组的长度

var arr = [ 5,58,7,9,6 ];
var x = arr.unshift( '是是旭' );
console.log( arr ) ==>是是旭,5,58,7,9,6
console,log( x ) ===> 6;

4、.pop()
功能:删掉数组的最后一条数据
返回新数组的长度

var arr = [ 5,58,7,9,6 ];
var x = arr.pop( );
console.log( arr ) ==>5,58,7,9
console,log( x ) ===> 4;

5、.shift()
功能:删掉数组的最后一条数据
返回新数组的长度

var arr = [ 5,58,7,9,6 ];
var x = arr.shift( );
console.log( arr ) ==>58,7,9,6
console,log( x ) ===> 4;

6、splice 删除 返回删掉的那些
splice( a,b,c,d,e )
a:开始的序号
b:要删掉多少个
c及以后的:将这些填充到删除的位置

var arr = [ 1,25,9,8,6,8 ];
        var x = arr.splice( 2,2 );
        console.log( x );     [ 25,9 ];
        console.log( arr );   [ 1,8,6,8 ]
        
从前添加一个数据:
arr.splice( 0,0,555 );  ==> [ 555,1,25,9,8,6,8 ];
第二位添加
arr.splice( 1,0,555 );  ==> [  1, 555,25,9,8,6,8 ];

7、sort()排序 默认:低到高排
返回值:排序后的数组

var arr = [ 1,25,9,8,6,8 ];
arr.sort(); ===>1,6,8,8,25

从高到低:
arr.sort( function( a,b ){        结果:[25, 9, 8, 8, 6, 1]
    return b-a; 从高到低
})

倒置:
arr.sort( function( a,b ){        结果: [8, 6, 8, 9, 25, 1]
    return 1;
})

顺序不变:
arr.sort( function( a,b ){        结果:[ 1,25,9,8,6,8 ]
    return 1; 
})

随机排:
arr.sort( function( a,b ){        结果:[ 1,25,9,8,6,8 ]
    return Math.random() -0.5;  random取0到1之间 -0.5一半是正一半是负
})

8、concat()数组拼接
返回:拼合后的新数组
不改变原数组

var a = [ 1,2,5,4,5 ];
var b = [ 4,5,43,2 ];
var c = [];
c = a.concat( b );  结果: [1, 2, 5, 4, 5, 4, 5, 43, 2]

9、join( value ) 拼接成字符串 value以什么拼接起来
将数组第一项用参数字符串连接起来,返回一个字符串

var arr = [  '明天'  , '您好' , '今天不开心'  ];
var str = '';
str = arr.join(''); 结果:明天您好今天不开心  
str = arr.join('-'); 结果:明天-您好-今天不开心  

10、reverse() 反转数组(所有数据类型都可以用) 改变原数组

var arr = [  '明天'  , '您好' , '今天不开心'  ];
console.log( arr.reverse() )  结果:["今天不开心", "您好", "明天"]

11、Array.isArray()判断一下是不是数组

var box  = document.getElementsByTagName( 'li' );
console.log( Array.isArray(box) );

12、filter过滤 返回过滤后的数组

var arr = [ 5,8,6,88 ];
var arr2 = [];
arr2 = arr.fliter ( function ( val ){
    if( val%2===2 ){
          return val;
      }
})
console.log( arr2 );  [8, 6, 88]

13、map()会把数组里的每一项都遍历一遍,并可以返回

 var arr = [ 1 , 2 , 5 , 4 ];
 var arr2 = arr.map( function ( value, index, arr ) {
            return value*10;
        })
console.log( arr2 );

结果:
      [10, 20, 50, 40]

var a = 2 ;
var b = 3 ;
实现:a b对换

var a = 2;
var b = 3;
a = [ b , b = a ][ 0 ];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容