07-数组

1. 数组概念
一组按顺序排列的有序集合,集合的每个值称为元素,元素可以是任意的数据类型
    数组用[]表示,元素间用逗号(,)分割
    通过 数组名[下标] 来访问每个元素

案例说明

<script>
    var arr = [1, 1.2, 'oh', NaN, [3, 4], {'name': 'rulai'}];
    console.log(arr[4])
</script>
2. 数组的长度
<script>
    var arr = [1, 1.2, 'oh', NaN];
    console.log(arr.length);  // 4
    arr.length = 6;
    console.log(arr);  // [1, 1.2, "oh", NaN, empty × 2]
    arr.length = 2;
    console.log(arr);  // [1, 1.2]
</script>
3. 数组的赋值
<script>
    var arr = [1, 1.2, 3, 4];
    console.log(arr.length);  // 4
    arr[1] = 2;
    console.log(arr);  // [1, 2, 3, 4]
    arr[6] = 50;  // 赋值超出了原下标最大值
    console.log(arr);  // [1, 2, 3, 4, empty × 2, 50]
</script>
4. 操作数组
4.1 返回该元素的数组下标
<script>
    var arr = [1, 2, 3, 4];
    console.log(arr.indexOf(3));  // 2
</script>
4.2 截取数组部分元素,返回一个新数组。不给参数则相当于复制
<script>
    var arr = [1, 2, 3, 4];
    console.log(arr.slice(0,2));  // [1, 2]
    console.log(arr.slice());  // [1, 2, 3, 4]
</script>
4.3 数组尾添加若干元素
<script>
    var arr = [1, 2, 3, 4];
    arr.push('a', 'b');
    console.log(arr);  // [1, 2, 3, 4, "a", "b"]
</script>
4.4 数组尾弹窗元素
<script>
    var arr = [1, 2, 3, 4];
    arr.pop();
    console.log(arr);  // [1, 2, 3]
</script>
4.5 向数组头部添加若干元素
<script>
    var arr = [1, 2, 3, 4];
    arr.unshift('a', 'b');
    console.log(arr);  // ["a", "b", 1, 2, 3, 4]
</script>
4.6 删除数组第一个元素
<script>
    var arr = [1, 2, 3, 4];
    arr.shift();
    console.log(arr);  // [2, 3, 4]
</script>
4.7 对数组排序
<script>
    var arr = [1, 5, 10, 20, 3, 4];
    console.log(arr.sort());  // [1, 10, 20, 3, 4, 5]
</script>
4.8 反转数组元素
<script>
    var arr = [1, 5, 10, 3, 4];
    console.log(arr.reverse());  // [4, 3, 10, 5, 1]
</script>
4.9 splice()方法
4.9.1 删除功能
array.splice(index,num)
    第一个参数为第一项位置
    第二个参数为要删除几个
    返回值为删除内容
    array为结果值

案例说明

<script>
    var arr = [1, 5, 10, 3, 4];
    console.log(arr.splice(1, 3));  // [5, 10, 3]
    console.log(arr);  // [1, 4]
</script>
4.9.2 插入功能
array.splice(index, 0, insertValue)
    第一个参数,插入位置
    第二个参数,0
    第三个参数,插入项

案例说明

<script>
    var arr = [1, 5, 10, 3, 4];
    arr.splice(1, 0, 'a', 'b')
    console.log(arr);  // [1, "a", "b", 5, 10, 3, 4]
</script>
4.9.3 替换功能
array.splice(index, num, insertValue)
    第一个参数,起始位置
    第二个参数,删除的项数
    第三个参数,插入任意数量的项

案例说明

<script>
    var arr = [1, 5, 10, 3, 4];
    console.log(arr.splice(1, 3, 'a', 'b'));  // [5, 10, 3]
    console.log(arr);  // [1, "a", "b", 4]
</script>
4.10 concat()方法
array.concat()
    用于连接两个或多个数组

案例说明

<script>
    var arr = [];
    var arr1 = [1, 2];
    var arr2 = [3, 4];
    console.log(arr.concat(arr1, arr2));  // [1, 2, 3, 4]
    console.log(arr);  // []    
</script>
4.11 join()方法
array.join()
    把数组中的所有元素转换为一个字符串

案例说明

<script>
    var arr = ['a', 'b', 'c', 'd'];
    console.log(arr.join());  // a,b,c,d
    console.log(arr.join('-'));  // a-b-c-d 
</script>
5. 二维数组和多维数组
5.1 二维数组的表示
arr[][]
5.2 二维数组的定义
1. 方法1
var arr = [[1, 2, 3], [2, 3, 4]];

2. 方法2
var arr = [];
for(var i=0;i<3;i++){  // 一维长度为3
    a[i] = [];
    for(var j=0;j<5;j++){  // 二维长度为5
        a[i][j] = [];
    }
}
5.3 二维数组的赋值
arr[1][2] = 5;  // 1表示第二行,2表示第三列,其数改为5
5.4 多维数组与二维数组类似

猜你喜欢

转载自blog.csdn.net/rulaixiong/article/details/80672873