js数组的用法

1.数组 - - 添加元素

arr.push('abc')  向数组尾部添加元素,返回值为数组的长度

arr.unshift('abc')  向数组头部添加元素,返回值为数组的长度

2.数组 - - 删除元素

arr.pop()  删除数组的最后一个元素,返回值为被删除的元素

arr.shift() 删除数组的第一个元素,返回值为被删除的元素

3.数组 - - 排队

eg: var arr = [1,2,3];   -->   [3,1,2]  或 [2,3,1]

arr.unshift(arr.pop())

arr.push(arr.shift())

4.数组 - - 删除、替换、添加

arr.splice(0,1)  从数组下标为0的元素起,删除一个元素,返回值为被删除的元素

arr.splice(0,0,'abc')  将'abc'插入到下标为0的位置

arr.splice(0,2,'def')   将数组中前两个元替换为'def'

arr.splice(1,0,'fgh','jkl')  在数组下标为1处,插入'fgh','jkl'

5.删除数组中重复的元素

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

for ( var i=0; i<arr.length; i++ ) {
  for ( var j=i+1; j<arr.length; j++ ) {
    if ( arr[i] == arr[j] ) {
      arr.splice( j, 1 );
      j--;
    }
  }
}

6.数组排序

arr.sort() 排序的原则是将数组中的元素转化为字符串,然后按照字母顺序从小到大排

将数组从小到大排

arr2.sort(function ( a, b ) {
  return a - b;
});

var arrWidth = [ '345px', '23px', '10px', '1000px' ];

arrWidth.sort(function ( a, b ) {
  return parseInt(a) - parseInt(b);
});

随机排序

arr.sort(function ( a, b ) {
  return Math.random() - 0.5;
});

7.随机函数

// x ~ y

Math.round( Math.random()*(y-x) + x )

// 0~x
Math.round( Math.random()*x)

// 1~x   ceil 表示向上取整
Math.ceil( Math.random()*x)

8.数组间的拼接

var arr1 = [ 1,2,3 ];
var arr2 = [ 4,5,6 ];
var arr3 = [ 7,8,9 ];

arr1.concat( arr2, arr3 );

8.数组反置

var arr1 = [ 1,2,3,4,5,6 ];

arr1.reverse();

9.字符串反置

var str = 'abcdef';
str.split('').reverse().join('');

上一篇:day4 二维数组旋转90度


下一篇:【2048小游戏】——原生js爬坑之遍历算法显示二维数组内容