while(循环条件){ 循环体 }
do{ 循环体 }while(循环条件);
for(初始值;循环条件;循环变化){ 循环体 }
break/continue
var i=0,sum=0;
do{
i++;
if(i%2==0){
continue;
}
if(i%5==0){
break;
}
sum+=i;
}while(i<10);
循环嵌套
(1)了解背景知识:历史、现状、特点、应用场景
(2)搭建开发环境:编写hello world
(3)变量和常量
(4)数据类型
(5)运算符
(6)逻辑结构
(7)通用小程序
(8)函数和对象
(9)第三方库、框架
(10)实用的项目
1.函数
parseInt()/parseFloat()/alert()/prompt()/Number()...
分为系统函数和自定义函数
函数(Function):有时也被称为方法,是一段预定义好,并可以被反复使用的代码块。
(1)创建普通函数
function 函数名称(){
函数体——封装反复使用的代码块
}
调用:函数名称()
(2)创建带有参数的函数
function 函数名称(参数列表){//形参——用于接收数据
函数体
}
调用:函数名称(参数列表); //实参——实际传递的数据
参数列表:可以是0个或者是多个,之间用逗号隔开;创建时的参数称为形参(形式上的参数),调用时的参数称为实参(实际的参数),调用的时候,实参的值会按顺序赋给形参。
形参本质上就是变量,只能在函数内部使用。
练习:创建函数getSum,传递1个参数,计算1~任意数字之间的和。
练习:创建函数getRun,传递2个参数,打印任意两个年份之间所有的闰年。
function getRun(a,b){
for(var i=a;i<=b;i++){
if((i%4==0&&i%100!=0)||i%400==0)
console.log(i);
}
}
getRun(1990,2000);
(3)带有返回值的函数
function 函数名称(参数列表){
函数体
return 返回值;
}
调用:函数名称(参数列表)
return表示函数调用后,返回的结果。
注意: 如果函数中没有写return或者return后没有任何的值,默认返回undefined
return后函数体中所有的代码都不会被执行
练习:创建函数getMax,传递2个参数,返回最大值。
练习:创建函数getMax,传递3个参数,返回最大值
练习:创建函数isRun,传递1个参数(年份),返回是否为闰年,是返回true,不是闰年返回false
2.作用域
就是变量和函数的可访问范围。
分为全局作用域和局部(函数)作用域
全局作用域:在代码任何地方都能访问。
局部(函数)作用域:只能在当前函数的内部访问。
(1)变量声明提升
JS程序执行前,在当前作用域下使用var声明的变量会提升到最前边,但赋值还是在原来的位置。
(2)函数提升
函数和变量一样,在JS程序执行前,把使用function关键字创建的函数提升到最前边。
注意:如果函数名和变量名一致,变量会覆盖函数;(先提升函数,再提升变量)
3.递归(了解)
在函数的内部调用自身
递归在使用的时候需要有结束条件,结合return
斐波那契数列
1 1 2 3 5 8 13 21 34 …
课后任务:
(1)复习今天内容,整理思维导图
(2)使用递归计算斐波那契数列的第n项
function fib(n){
//跳出条件是:当n为1或者n为2的时候,返回1
if(n==1 || n==2){
return 1;
}
//每一项的值=前两项n-1、n-2相加的和
return fib(n-1)+fib(n-2);
}
console.log(fib(30));
(3)预习JS中的对象