匿名函数
匿名函数就是没有函数名的函数
function() {
alert("我是没有名字的函数")
}
匿名函数创建比较容易创建,可是没有函数名,该怎么去调用匿名函数呢?
1.给匿名函数命名,让它变成一个有名字的函数,但是又不是直接命名,而是声明一个变量。
var str=function(){
alert("我是没有名字的函数")
}
str()
2.直接调用匿名函数
// 2.直接调用匿名函数
// 注意函数要加括号 实参括号后面要加分号
(function(a,b){
alert(a+b)
})(20,10)
)]
3.使用一元运算符调用函数。
// 3.使用一元运算符直接调用
// 使用一元运算符函数可以不加括号
// ~ + - !...
~ function (a, b) {
alert(a + b)
}(100, 200);
4.利用事件去调用函数
<input type="button" value="1" id="btn1">
<!-- 4. 利用事件去调用 -->
<!-- 为什么写在下面,因为浏览器解析顺序是从上到下的,所以写在下面才会执行 -->
<script>
var btn = document.getElementById("btn1")
btn.onclick = function () {
alert("我被点击了")
}
</script>
5.利用对象调用函数。
// 5.作为对象的方法去调用
var obj = {
name: "张三",
age: 18,
eat: function () {
alert("喜欢吃")
}
}
// 注意调用时一定要加括号
obj.eat()
// 有参数是()内要写上参数
var obj = {
name: "张三",
age: 18,
eat: function (foodName) {
alert("喜欢吃" + foodName)
}
}
obj.eat("蛋糕")
6.作为另一个函数的参数
// 6.做为另一个函数的参数
function myFun(fn) {
alert("我是参数为函数的函数");
fn()
}
myFun(function () {
alert("我是函数参数")
})
这样,我们就总结出六种调用匿名函数的方式:
1.设置变量名,让匿名函数变成有名函数。
2.直接调用,注意函数与实参都要用括号。
3.一元运算符调用,函数不用加括号。
4.利用事件调用函数。
5.利用对象调用匿名函数。
6.匿名函数作为函数参数时的调用。
快去试试吧!