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 ];