- parseInt() 将字符串数字返回整数
- parsefloor() 将字符串数字返回浮点数
- isNaN() 检查参数是否非数字 不是数字返回true;可以将'123'字符串转成数字123 'zbc'不能转成数字(NaN表示非数字)
函数的调用方式
1、自己执行
fn();
2、点击执行
<button onclick="fn()">11</button>
函数的传递参数方式
第一种传递参数的方式
fn('hello','world')
第二种传递参数的方式
<button onclick="fn('hello','world')">11</button>
<script>
function fn(a,b){
document.write(a+b);
}
</script>
全局变量
声明在函数外的变量,该页面的所有脚本和函数都能使用;生存期:一直都存在,删除后消失;作用域:全局
<script>
let num = 1;//声明在函数外
function fn1(){
document.write(num);
}
fn1();
</script>
局部变量
声明在函数内部的变量,只有函数内部能访问,只有该函数能使用(必须定义);生存期:函数运行以后被删除(垃圾回收机制),提高性能;作用域:函数内部(可以在不同函数中使用相同名称的局部变量)
<script>
function fn1(){
var num = 1;//声明在函数内部
document.write(num);
}
fn1();
</script>
return返回值的作用
1、返回给调用函数的值;
2、立即停止并返回指定的值,后面的代码不执行。
<script>
var num = 1;
function add(){
num++//执行,此时num=2
return alert(num);//执行,弹出框显示num的值
document.write(num);//被return拦住,不执行
}
add();
</script>
全局作用域
- 所有window对象的属性拥有全局作用域
- 所有末定义直接赋值的变量自动声明为拥有全局作用域
- 最外层函数和在最外层函数外面定义的变量拥有全局作用域
局部作用域
只能在指定区域被访问,例如函数的局部变量,只能在函数内部被访问,所以可以在不同的函数中使用名称相同的局部变量
函数的作用域链:先从当前层寻找,找不到就去上一层,如果找到了,就不继续往上找了
<script>
var a = 2;//全局作用域
function fn(){
function fn2(){
a++;//局部作用域
return a;
}
fn2();//不执行fn2,a不会a++
document.write(a);
}
fn();
</script>