博主辛苦了,我要打赏银两给博主,犒劳犒劳站长。
【摘要】匿名函数指的是没有函数名称的函数。其实,众所周知的 jquery 就是一个匿名函数,jquery 的代码就是封装在一个匿名函数中 (function(window,undefined){})(window);
匿名函数在实际开发运用中很常见,首页以普通的一个 js 函数为例:
// 函数名称为 func,参数 a,b,返回值是 b
function func(a,b)
{
console.log(a);
return b;
}
此时,我们将函数名去掉:
// 这将会报错,因为不符合语法规则
function (a,b)
{
console.log(a);
return b;
}
再次,给匿名函数用 () 包起来即可:
// 不会报错,但不能够运行
(function (a,b)
{
console.log(a);
return b;
})
如果要运行匿名函数则在后面添加小括号 (),里面带着相应的参数:
// 匿名函数已执行
(function (a,b)
{
console.log(a);
return b;
})('aa','bb')
最后给出 js 匿名函数的一个通用格式:
// 当出现两个连续的匿名函数时,需要使用分号 ; 隔开
(function(){});
(function(){});
我们可以查看一下匿名函数的类型:
// 输出的是:"function",匿名函数的类型就是 function 类型
console.log(typeof function(){});
(1)事件
<input type="button" id="button" value="click me">
<script>
btn = document.querySelector("#button"); // 获取 id 为 button 的元素
btn.onclick = function(){alert('click')} // 添加点击事件
</script>
(2)对象
var obj = {
name:"mafutian",
age:18,
fn:function(){
return "name :" + this.name + " age:" + this.age
}
}
console.log(obj.fn()) // name :mafutian age:18
(3)函数表达式
// 将匿名函数的值赋给变量 fn
var fn = function()
{
return "my name is mafutian"
}
(4)回调函数
setInterval(function(){
console.log('hello world')
},3000)
(5)作为返回值
function func(){
return function(){
return "try you best"
}
}
// 调用方法
func()()
以上就是关于匿名函数的相关知识。
版权归 马富天个人博客 所有
本文标题:《JavaScript/js 匿名函数》
本文链接地址:http://www.mafutian.com/391.html
转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^
顶0
踩0
评论审核未开启 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
||