switch语句
格式
switch(表达式){
case 变量1:
{ 语句1 }
case 变量2:
{ 语句2 }
case 变量3:
{ 语句3 }
case ...
{ ... }
default:
}
如果满足case 后的变量,在没有遇到break的情况下,会继续执行后面case 下的语句
循环语句
- for语句
···
// break中断循环
// continue结束本次循环
var flag=false;
aaa:
//alert("定点到aaa"); //锚点
for(var i=1;i<100;i++){
var b=1000;
console.log(i);
// if(i>50){
// break;
// }
if (i==90){
break aaa;
}}
//i 此时是一个全局变量
// console.log(i);
console.log(b);
//循环体没有作用域
···
- while和do while语句
while语句比较简单就不对多介绍了
函数部分
匿名函数*:
匿名函数是js中比较常见的函数类型。匿名函数的实现主要有四种方式。
匿名自执行函数最常见的作用是用于实现闭包的情况中。
闭包:闭包是js的一种特性,我们可以通过闭包实现函数内外部的连接,并且可以使得函数的局部变量始终存在于内存中。
全局作用域和局部作用域
···
function fun1() {
var a=20;
console.log(a);
//匿名局部函数
return function () {
var b=30;
console.log(b);
}
}
console.log("执行fun1()")
fun1();
console.log("执行fun1()()")
fun1()();
var num=100;
function run() {
num=200;
var num=300;
console.log(num);
//声明提升等价于
/* var num;
num=200;
num=300;*/
}
console.log("执行run()")
run();
···
声明提升(函数和变量):上面run()函数执行结果是:300,而并不是100或200.
闭包就是能够读取其他函数内部变量的函数。例如在javascript中,只有函数内部的子函数才能读取局部变量,所以闭包可以理解成“定义在一个函数内部的函数“。在本质上,闭包是将函数内部和函数外部连接起来的桥梁。
函数形参问题:
形参没有类型且可以通过arguments来获取实际函数中的参数(js中没有重载,如果对同一函数进行参数修改则以最新函数生效)
JavaScript内置对象
Array:功能代码示例-抽奖系统
//伪随机数
var win=[];
for(var i=0;i<7;i++){
//获取随机整数0~9
var num=parseInt(Math.random()*10)
win.push(num);
}
var arr=[];
//通过id获取页面中bntton
var btn=document.querySelector("#btn_souce");
//添加事件
btn.onclick=function () {
var input=document.querySelectorAll('[type="text"]');
for (var i=0;i<input.length;i++){
arr.push(input[i].value);
}
var n=0;
for (var i=0,j=0;i<7;i++){
if (win[i]==arr[i])
n++;
}
switch (n){
case 7: alert("恭喜你获得一等奖");break;
case 6: alert("恭喜你二等奖");;break;
case 5: alert("恭喜你三等奖");;break;
default:
alert.log("谢谢惠顾!")
}
}
效果:

网友评论