JavaScript命名函数和匿名函数
1.命名函数
function func(){
console.log("这是一个命名函数")
}
调用func
func();//方法+() 代表立即执行
2.匿名函数
document.onclick=function(){
console.log("这是一个点击事件驱动的匿名函数")
}
使用变量将匿名函数进行储存
var func3=function(){
console.log("通过变量储存的匿名函数")
}
通过变量名进行函数的调用
func3();
func3();
func3();
document.onclick=func3;
function func2(){
console.log("这是一个被点击事件驱动的命名函数")
}
document.onclick=func2;
JavaScript带有返回值的函数
return之后的所有代码都不执行
类如:
function func{
return x;
console.log(x);//这个就打印不出来
}
工作中,经常需要对方法或函数执行的结果进行处理时,就需要使用return语句将结果返回(抛出)
JavaScript闭包函数
局部作用域:局部变量
变量在函数中声明,变量为局部作用域
局部变量:只能在函数内部访问
function func(){
var x=1;
return function(){
return x;
}
}
JavaScript闭包函数的应用
function func1() {
var x = 10000;
return function () {
return x;
}
}
var res=func1();//将func1中返回的方法进行储存
console.log(res());
JavaScript函数的封装
字面量 不可被改变 重复使用字面量
使用变量将字面量储存起来,直接使用变量
功能函数 方法
将功能封装为函数,对外提供函数的接口(使用方法)
实现10以内的 + - * /
function add(a,b) {
return a+b
}
告诉使用者 add 是一个用来做加法的方法 add(数字1,数字2)
function sub(a,b) {
return a-b
}
function times(a,b) {
return a*b
}
function devided(a,b) {
return a/b
}
var res=add(10,20);
console.log(res);
封装:相同的地方不变不同的地方通过参数来表示
function func(a, b, type) {
return eval(a + type + b)
}
console.log(func(10, 20, "+"))
console.log(func(10, 20, "-"))
console.log(func(10, 20, "*"))
console.log(func(10, 20, "/"))