一、循环的退出
1、continue 立即结束本次循环的执行,执行控制循环变量修改,然后再进入循环,立即结束当前次循环,直接执行下一次循环。
2、 break直接结束循环,break之后的循环代码不再执行,结束离它最近的循环。
例子:
for (var i=0;i<10;i++){
for(var j=0;i<10;j++){
if (j == 5){
// 当前这个break只能结束内层循环
break
}
console.log(i*j)
}
}
3、改变变量值
var num = 1;
while(num < 2019){
if (num%4==0 && num%1000==0){
console.log(num)
// 修改控制循环变量值,让循环条件不成立,也可以结束循环
// num = 3000
break
}
num ++
}
二、函数
1、函数:封装了一段功能代码的代码块;
function 关键字,用于声明一个函数,格式: function 函数名(参数列表){函数体},函数名和变量名的命名规范一致,遵守小驼峰命名法,参数之间用,逗号隔开。
2、调用函数
参数: 执行函数时必要的一些数据,函数可以多次重复调用, 调用多个参数函数时,需要将参数依次传入,声明变量接收函数执行返回的结果。
三、变量作用域
1、直接在script下直接声明的变量—函数内部可以使用函数外部定义的变量—函数内部声明的变量
2、在函数外部不能使用函数内部声明定义的变量;
变量是定在作用域中的;
代码最外层的作用域(全局域),在全局域中声明的变量叫做全局变量(作用域范围:从声明开始到整个全局域结束); 一个函数的内部会形成一个独立的作用域,叫做局部作用域,在这个作用域中声明的变量叫做局部变量(作用域范围:从声明开始到局部作用域结束);局部作用域中可以使用全局变量,但是在全局域中不能使用局部变量
3、全局变量
js代码在执行之前,会被预处理,进行函数和变量的声明,变量声明会被提前但是赋值不会提前;undefined js中的一个设计缺陷 ES6 之后 js的严格模式(所有的变量必须先声明后使用);
在局部作用域中声明了变量,和全局变量同名,局部变量会覆盖全局变量;
在局部作用中声明局部变量时,不要和全局变量同名,否则会导致局部范围内全局变量被覆盖。
四、switch-case分支结构
1、prompt() 在弹窗输入内容
2、 switch语法结构; switch(变量){ case 值: xxxxx; break};
switch 中 case检测的值的类型必须和变量值的类型一致
3、== 和=的区别
== 比较的等号两边变量的值是否相等,不进行类型判断;
=== 如果要同时判断值和类型都是否相等,可以使用=。
五、Math对象及常用的数学方法
1、Math对象是js中内置对象
(1)Math.E 自然对数
(2)Math.abs绝对值函数
(3)Math.pow幂运算 ,计算x的y次方
(4)Math.sqrt开平方运算;开多次方运算 pow
(5)三角函数 Math.sin、Math.cos、Math.tan、Math.cot
(6)Math.max取最大值,找到出最大的值
(7)Math.min取最小值
(8)Math.floor向下取整
(9)Math.ceil 向上取整
(10)Math.round四舍五入;整数
(11)Math.random生成0~1之间的随机小数