javascript基础-第四章:数组

第四章:数组

1.什么是数组

数组:一堆数的组合。
================
之前的变量都是单个单个的,一个学生成绩,学生姓名,手机号码
但是我们经常要描述一堆。比如,一个班里30个学生成绩。
s1,s2,s3...s30 变量么
=====
不科学的,所以,就需要一种数据类型,数组
js里的数组,功能是非常强大的。可变长度。长度不固定,不够用了,自动会扩容。数组里可以存放任意数据类型

2.定义和访问数组

<script type="text/javascript">
    //1.
    var arr=new Array();//就定义数组对象,不给长度默认10,也可以给一个长度new Array(20)
    //数组通过索引小标来访问,[index],一般下标从0开始
    arr[0]=10;
    arr[1]=20;
    arr[2]="abc";
    //arr[100]undefined 因为我们并没有给索引100的位置赋值。未定义
    //js中数组没有越界的概念
    //索引也可以是负数,但一般都是从0开始
    arr[-1]=99;
    console.log(arr[0],arr[1],arr[2],arr[100],arr[-1]);
    //2.还可以如下
    var arr2=[1,2,3,4,5];//直接定义数组,并赋初值
    console.log(arr2[0],arr2)
script>

3.数组的遍历

<script type="text/javascript">
    var arr=["aa","bb","cc","dd","ee"];//定义数组
    console.log("使用索引方式遍历:")
    for(let i=0;i<arr.length;i++){
        console.log(arr[i]);
    }
    console.log("使用增强for 方式遍历:");
    //注意,i是索引,所以可以修改数组元素
    for (let i in arr) {
        console.log(arr[i]);
    }
    console.log("使用for ..of方式遍历,ES6");
    //注意,这里的item是数组里的每一个元素,这里会自动将数组的元素依次赋值给item
    //只读的方式
    for (let item of arr) {
        console.log(item);
    }
script>

4.数组常用方法

<script type="text/javascript">
    var arr=[1,2,3];
    //尾部追加
    arr.push(4);			
    console.log(arr);
    let x1=arr.pop();//尾部删除
    //join方法是将数组里的每一个元素按照指定字符串拼接起来
    console.log(x1,arr.join(","));
    //头部插入
    arr.unshift(10,20);
    console.log(arr.join(","));
    //头部删除
    x1=arr.shift();
    console.log(x1,arr.join(","));
    
    arr.push(6,7,8,9);
    console.log("删除前",arr);			
    //指定位置删除() 含义,在索引2开始,删除3个元素
    arr.splice(2,3)
    console.log("删除后",arr);		
    //含义,在索引2开始,删除3个元素,用50,60,70,80代替
    arr.splice(2,3,50,60,70,80)
    console.log("删除后插入:",arr);	
    //可以直接做插入,在索引为4的位置,删除0个,插入999
    arr.splice(4,0,999)
    console.log("插入后:",arr);	
    
    //slice切片操作,即从数组里取出子数组
    arr=[1,2,3,4,5,6,7,8,9,10]
    arr2=arr.slice(3,6);//左闭右开,从位置3开始,取到索引6,不包括6
    arr2[1]=99;
    console.log(arr2.join(","),"原数组:",arr.join(","))
    arr2=arr.slice(3);//从位置3开始到最后
    console.log(arr2);		
    //concat方法,拼接两个数组
    arr1=[1,2,3,4];
    arr2=[7,8,2];
    //需求,合并两个数组
    arr3=arr1.concat(arr2);
    console.log(arr3)
script>

5.二维数组

多维数组,js中不存在多维数组,都是一维数组。
如果数组里的每一个元素都是一个一维数组。就是二维
<script type="text/javascript">
    const books=[
        [1,"java基础",20],
        [2,"js基础",10],
        [3,"c++基础",30],
        [4,"go基础",20],
        [5,"python基础",40],
    ];
    let html="";
    html+="";
    html+="";
    html+="";for(let book of books){
        html+=""
        html+="";
        html+="";
        html+="";
        html+="";}
    html+="
编号书名单价
"+book[0]+""+book[1]+""+book[2]+"
"
; document.write(html); ///
script>

你可能感兴趣的:(前端技术,javascript,前端,typescript)