WEB Basic基础-10

1900年1月1日是星期一


1900年1月30日是星期二


2018年6月12日


year:2018


month:6


day:12






从 1900年 开始 到 year-1年  整年相加


从year年 1月 到 month-1月 整月相加


再加day






日 一 二 三 四 五 六


                1  2


 3  4  5  6  7  8  9


10 


=============================================


1、循环的嵌套


允许在一个循环的内部再出现循环






for(var i=1;i<=10;i++){


for(var j=1;j<=10;j++){


for(var k=1;k<=10;k++){





}


}


}


练习:


1、在控制台上打印输出


*        1 : 4个空格1个星


***       2 : 3个空格3个星


*****      3 : 2个空格5个星


*******     4 : 1个空格7个星


*********    5 : 0个空格9个星


*******


  *****


***


  *


空格:5-行数


星星:2*行数-1


console.log()


2、在控制台上打印九九乘法表


*


**


***


****


*****






1*1=1


1*2=2 2*2=4


1*3=3 2*3=6 3*3=9


2、函数


1、什么是函数


函数,即 function,是一段预定义好,可以独立执行并包含多条执行语句的代码块


优点:


1、多条执行语句的封装


2、实现了代码的复用


2、在JS中创建函数


function 函数名(参数列表){


函数体


[返回值]


}






参数列表:


如果没有参数,可以为空


如果有参数,就编写参数列表。如果参数是多个的话,各个参数之间使用","隔开。


有参数的函数,在调用时就要传参,如果未传参的话,参数的值就是undefined





ex1:


function show(){


console.log("这是一个无参函数");


console.log("调用时不需要传参");


}


ex2:


function show(name){


console.log(name);


}






function show(name,age){


console.log(name);


console.log(age);


}






返回值:


在函数体内,经过运算后,需要传递给函数调用者的一个值,就是返回值。


返回值是可选的,有返回值的话,需要使用 return 进行返回,最多只能返回一个值






ex


function show(name){


return "你好:"+name;


}


3、函数的调用:


在任意的JS合法的位置处,都允许做函数的调用






var ret = 函数名(参数列表);






有参数,则传参,否则,为空


有返回值,可以接收,否则不接收


练习:


改版日期计算器为函数版本


1、整体功能要封装到函数中


2、将闰年判断的功能提出来独立成一个函数


1、接收一个参数表示年份


2、返回一个boolean值表示是否为闰年的结果


3、整体功能中,所有的闰年判断通过函数调用完成


4、通过 按钮 的单击操作,来调用日期计算器


4、变量的作用域


1、什么是变量的作用域


变量的作用域指的是变量的可访问范围


2、作用域的分类


1、局部变量


使用var关键字声明在某个函数内的变量,都是局部变量






局部变量只能在声明的函数内使用,出了函数则无法使用


2、全局变量


1、在function之外声明的变量都是全局变量


2、声明变量不使用var关键字的时候,都是全局变量






全局变量可以应用在各个函数中以及各个位置处






注意:全局变量,推荐放在所有的function之外,使用var关键字去声明


3、数组 - Array


1、什么是数组


数组(Array)是一个用于保存批量数据的数据结构


数组是按照线性结构来保存数据的


2、创建数组


1、创建一个空数组


var 数组名 = [];


2、创建数组并初始化元素


var 数组名 = [元素1,元素2,... ...];


3、创建一个空数组


var 数组名 = new Array();


4、创建数组并初始化元素


var 数组名 = new Array(元素1,元素2,...);


注意:


var 数组名 = new Array(length);


length 表示是初始化的长度,length为number类型


练习:


1、创建网页04-array.html


2、创建一个数组分别保存


奥巴马,特朗普,金正恩,普京,默克尔


3、在控制台中打印数组中的值


3、数组的使用


获取 或 设置数组的元素值,一律使用下标


下标从0开始,到数组元素个数-1结束


1、将 arr1 数组中的第一个元素更改为"马克龙"


arr1[0] = "马克龙";


2、打印输出 arr1 数组中的第三个元素


console.log(arr1[2]);


4、获取数组的长度


属性:length


用法:数组名.length


1、使用场合


1、能够找到数组中,最新要插入元素的位置(即向数组尾部增加元素时使用)


var names = ["刘德华","张学友","郭富城","谭咏麟"];


//向 names 的尾部追加新元素


names[names.length] = "黎明";


练习:


让用户循环的从弹框中录入数据,并将录入的数据保存在一个数组中,直到输入 exit 结束(exit不存)。最后打印数组中所有的内容


2、清空数组


将数组的length属性设置为0,即表示清空数组中所有的元素


3、配合循环,遍历数组中的每一个元素


var arr = ["金正恩","金正日","金日成"];


//从头遍历到尾


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


console.log(arr[i]);


}


//从尾遍历到头


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


console.log(arr[i]);


}


练习:


1、创建一个包含若干整数的数组,找出该数组中的最大值,并打印


2、创建一个只包含三个数字的数组,将三个数字按照从小到大的方式存放在数组中,并打印


3、声明一个数组包含若干数字;从弹框中录入一个数字,判断该数字在数组中的下标是多少


如果存在:提示下标


如果不存在:提示数据不存在


5、常用API


1、toString()


作用:将数组转换成字符串,将转换后的字符串进行返回






var arr = ["孙悟空","猪八戒","沙僧"];


console.log(arr.toString());


结果:孙悟空,猪八戒,沙僧






console.log("数组:"+arr);


2、join(seperator)


作用:返回一个由seperator连接的数组元素的字符串





var arr = ["孙悟空","猪八戒","沙僧"];


var str=arr.join('-');


console.log(str);


/*孙悟空-猪八戒-沙僧*/


3、reverse()


作用:反转


注意:该函数会改变现有数组的结构


4、sort()


1、作用


对现有数组的内容进行排序


默认是按照元素的unicode码升序排序


2、注意


该函数会改变现有数组的结构


3、允许通过自定义的排序规则(排序函数)来指定数字的排序方式


语法:arr.sort(排序函数);






1、升序的排序函数


function sortAsc(a,b){


return a-b;


}






1、将sortAsc指定为排序函数


2、数组会自动的将相邻的两个数字传递到参数的位置处


3、如果返回值是 > 0的数字的话,则交换两个数字的位置,否则不变






指定排序函数:


arr.sort(sortAsc);


2、使用匿名函数指定排序规则


匿名函数:是一个没有名称的函数,只为某一功能而存在






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









作业:


随意从弹框中输入一个数字


将该数字转换成二进制再输出


[除二取余法]





















































  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值