作用域

概念:一个变量的可用范围

全局的变量

局部的变量

作用域:

全局的作用域:直接放在全局的作用域中的变量,只希望所有的作用域能够共有的变量就声明在全局的作用域

局部的作用域:声明在函数内部的变量或者方法的参数变量

只要在方法内部声明的变量就是局部的变量

全局变量和局部变量的生命周期

全局变量的生命周期,全局变量在打开网页的时候就创建了,关闭网页的时候就销毁

局部变量的生命周期,方法调用的时候创建,方法调用完之后销毁。

全局变量都属于window下面的属性

window对象:是整个网页的全局的作用域,再打开网页的时候就已经自动的创建好了

作用域链

先从自身出发,看看有没有变量,如果有就不会沿着作用域链往上找,否则沿着作用域往上去寻找,直到找到。

js中的值传递

将一个变量的值赋值给另外一个变量,就是将变量种的值复制给新的变量

js中的一切赋值都是值传递,原来的变量的值不会发生改变

需求:有三个变量,定义一个方法,求三个变量的最大值?

jquery利用全局变量传参_javascript

 

函数的递归

递归调用/嵌套调用:在函数内部调用自己(自己调用自己)

分支结构

语法:if(逻辑表达式){
//逻辑表达式正确就执行这里的代码
}else if(){
}else{
}
switch-case语句
多条分支语句,根据条件判断,选择执行,在条件比较多的时候用来代替if else语句。
语法:
switch(表达式){
case表达式1:(当表达式==表达式1的时候)执行的代码块
break;
case表达式2:(当表达式==表达式2的时候)执行的代码块
break;
case表达式3:(当表达式==表达式3的时候)执行的代码块
break;
....
default:默认代码块(如果上述所有条件都不满足就执行这里的代码块)
break:表示退出当前结构的意思。
}
面试题:if...else语句和switch...case语句的区别?
switch...case如果加了break,