一.js的数组
概念:是能存储多个数据的集合
作用:能存储和操作多个数据
创建数组:
创建数组
:var arr=[]; //空数组输出的-----undefined
:var arr=new Array();
数组的属性:
数组的属性
:length:-----
:输出数组的长度
数组的索引:
数组的索引
:arr[index]
:从索引为“0”开始,一直到“length-1”为止
:var arr=[1,2,3];
--console.log(arr[3]);
--将会强制的增加数组的元素,但其元素为空,arr[3]=null;
数组的循环:
数组的循环
:for(var i=0;i<arr.length;i++){
console.log(arr[i])
}
实例:翻转数组
//翻转数组
var arr=[1,2,3,4,5];
for(var i=0;i<arr.length/2;i++){
var temp=arr[i];
arr[i]=arr[arr.length-1-i];
arr[arr.length-1-i]=temp;
} //如果不用中间变量存储初始数据,则在循环的过程中,将会造成数组数据的丢失,
//如例子当中一样,造成arr[0]=1,arr[1]=2,数据的丢失,被arr[4],arr[3]覆盖掉
//将输出'5,4,3,4,5'
console.log(arr);
实例:冒泡排序:
//冒泡排序
//一步一步的排序(前后排序比较),前后排序比较一次,则冒泡一次
//arr[0]---arr[1];arr[1]---arr[2];arr[2]---arr[3];arr[3]----arr[4];arr[4]----arr[5]
var arr=[1,30,2,5,60,8];
for(var i=0;i<arr.length-1;i++){
for(var j=0;j<arr.length-i-1;j++){
// if(arr[j]<arr[j+1]){
// var temp=arr[j];
// arr[j]=arr[j+1];
// arr[j+1]=temp;
// }
if(arr[j]>arr[j+1]){
var temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
console.log(arr);
二.函数
概念:一段重复的代码
作用:可对一段代码重复使用
基本结构:
函数的基本结构:function (函数名){
函数体...语句
}
调用函数:
调用函数:函数名();
调用函数不加括号和加括号的区别
:调用函数带括号,起调用作用,函数()实际等于函数的返回值,加括号,就代表 将会执行函数体的代码
:调用函数不带括号,函数名此时叫做函数的指针,用于传参,此时不是得到函数的结果,
因为不会运行函数体代码。它只是传递了函数体所在的地址位置,在需要的时候好找到函数体去执行。
函数的实参和形参
函数的形参和实参
形参:定义函数时,括号里的参数;
----声明----function sum(a,b){...}
实参:调用函数时,括号里的实际性函数(数值,变量....)
----调用----sum(2,3);
函数的返回值:
函数的返回值:函数并不用将所有的结果都打印出来,期望其函数能给予一些反馈,
比如,计算的结果返回来进行后续的运算
:return 语句(返回值)...
:其return后的代码都将不会执行
:无return或者无返回值,函数的默认返回值--undefined