day06 数组、冒泡排序、数组函数(api、多维数组)




前言

我们常用变量来存储数据,但是变量只能对应存储一个数据。对于数据很多的例子没法用变量来定义空间,所以引入了数组的概念,数组可以在一个空间中放一堆数据,方便多数据的管理。



一、内置基本类型和引用类型

1)内置基本类型:Number,String,Boolean,undefined;null

2)引用类型:object

内置类型与引用类型在内存中的存储方式:

1)内置类型:只有一个空间,这个空间直接保存变量数值,在栈区;

2)引用类型:有两个空间,一个栈空间,一个堆空间。栈存储new出来的堆空间的地址

堆空间,存储真正的数值;



二、数组定义



1.构造方法

   new:关键字,用于在堆开辟新空间;

   Array:数组数据类型

   var arr=new Array(1,2,3,4,5);



2.字面量

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

三、数组元素访问

数组名[下标];

下标:从零开始,可以是变量

下标取值范围:0~元素个数-1;

数组长度:length;

四、数组元素的遍历

var arr=[1,2,3,4,5,6,7,8];

for(var i=0;i<arr.lendth;i++){

console.log(arr[i]);

}

输出结果为:1 2 3 4 5 6 7 8 

五、 数组逆序

var arr=[1,2,3,4,5,6,7,8];

var t=0;

for(var i=0;i<arr.lendth;i++){

t=arr[i];

arr[i]=arr[arr.length-i-1];

arr[arr.length-i-1]=arr[i];

console.log(arr[i])

}

输出结果:8 7 6 5 4 3 2 1

}

 六、数组相关函数

1、push

        功能:在数组尾部插入一个或多个元素

        参数:push(x1,[x2...xn]);

        返回值:插入数据后数组长度

2、pop

        功能:删除尾部数据

        参数:pop()

        返回值:被删除的数据

3、unshift

        功能:在头部插入一个或多个数据

        参数:unshift(x1,[x2...xn]);

        返回值:插入数据后数组长度

4.shift

        功能:在头部删除数据

        参数:shift()

        返回值:被删除的数据

5.reverse

        功能:数组逆序

        参数:无;

        返回值:无;

6.splice

        功能:删除数组中元素,替换成其他元素

        参数:splice(起始位置,偏移量,【替换元素】);

        返回值:被删除的元素,就是一个数组

7.slice

        功能:截取数组中的一段数据

        参数:slice(起始位置,偏移量)

        返回值:截取的数组

8.join

        功能:将数组转换为字符串

        参数:join(【字符串分隔符】),默认分隔符为逗号

        返回值:被分割的字符串

9.concat

        功能:连接两个数组

        参数:concat(数组)

        返回值:拼接好的新数组

七、多维数组

在JavaScript中其实没有多维数组的概念

二位数组本质还是一位数组

例如:arr=[[1,2,3],[4,5,6],[7,8]]

一个一维数组的元素是三个一维数组;

八、冒泡排序

冒泡排序就是两两比较,找出最大的那个,或者最小的那个

排N-1趟,每次排N-i-1次(i是趟数)

举例:

5,6,3,7,4,8,2,6

第0趟:交换七次

5,6,3,7,4,8,2,6

5,3,6,7,4,8,2,6

5,3,6,7,4,8,2,6

5,3,6,4,7,8,2,6

5,3,6,4,7,8,2,6

5,3,6,4,7,2,8,6

5,3,6,4,7,2,6,,,,,,8

以此类推:第一趟交换六次

var arr = [5,6,7,4,8,3,9,2,0,1];

var t;

for(var i=0;i<arr.length-1;i++){

        for(var j=0;j<arr.length-1-i;j++){

               if(arr[j]>arr[j+1]{

                t=arr[j];

                arr[j]=arr[j+1];

                arr[j+1]=t;

                }

        }

}

        




总结

以上就是数组的基本使用,定义,函数的总结,重点背冒泡排序与函数的应用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值