for循环
概念:做重复的事情,通常和数字关联
for循环的基本结构(两个分号不可以省略) for(;;){}
for(1初始值;2结束条件;4更新变量){
3 执行的for循环代码
}
数字为for循环的运行顺序
for循环注意点
是否满足条件:(如果不满足:代码一次不执行)
是否有结束条件(如果没有,就是一个死循环(无限循环))
浏览器15秒还没有反应过来,就会自动崩溃
break在for循环中只要break代码被执行for循环立即终止
continue continue当次循环continue关键字以后的代码不执行 执行下一次循环
函数
定义
函就是一块可以重复执行(调用)的代码块 是一种方法
写法 function 名称(){
//你要实现的方法
}
函数的用法
1 在js中直接调用 名称()
2 可以html事件属性 <h1 onclick(响应方法)="函数名称()">
3 dom 1级事件注册 btn.onclick = 名称
4 dom2级事件注册 btn.addEventListener("click",fun)
5 函数中调用函数 function play(){
check();
.....
}
函数的参数
function say(name){
alert("我喜欢"+name)
}
say("小红")
say("苹果")
1 name 是形式上的参数(形参) 定义时候"小红","苹果" 实际的参数(实参) 执行的时候
函数在执行的时候会把实参代入函数替换形参执行代码
2 参数列表:函数有个特殊变量arguments,类似数组的变量
存储函数传入参数列表
3 默认参数
//定义函数参数默认值,没有传入参数时候,默认使用这个值
function send(name="lili"){
//....
}
send () //没有传入name值,默认name等于lili
函数的返回值
1 函数默认返回 undefined
2 用return 关键字可以定义函数返回值
3 return后面的代码 函数不会执行的
匿名函数
定义
没有名字的函数
用法
1 在事件注册 el.onclick = function(){}
2 当做回调函数 list.forEach(function(item){})
3 匿名函数自执行 (function(){ ...})()
!function(){ ...}()
4 赋值给变量 var abc = function(){ ...}
先声明后执行
函数的变量
变量的提示
js再执行代码前,会把当前作用域的函和变量提升到最前面
把变量赋值为undefined 再执行其他代码
全局作用域:
在js任意地方可以访问 1 在script 用var声明的变量
2 window的全局属性
3 在任意地方没有用关键字声明的变量也是全局变量
函数作用域
1 在当前函数,子函数可以访问
2 在当前函数声明的变量
注意 函数可以访问其父函数作用域 /全局作用域变量在函数外部不能访问函数内部变量
if,switch,else,for没有作用域