对匿名函数的一些知识点总结!

顾名思义,匿名函数就是没有实际名字的函数,下面,我们先初步了解一下和匿名函数相关的概念。

(1)要使用函数,就要对函数先定义。  function abc(){ }    

        有参,无参函数 ,有返回值的函数,typeof 返回的都是 function 对象

    (1.1)typeof 运算符的用法:   //返回一个用来表示表达式数据类型的字符串
typeof的运算数未定义,返回的就是 "undefined".
运算数为数字 typeof(x) = "number"
字符串 typeof(x) = "string"
布尔值 typeof(x) = "boolean"
对象,数组和null typeof(x) = "object"
函数 typeof(x) = "function"
typeof 运算符返回一个用来表示表达式的数据类型的字符串。 
可能的字符串有:"number"、"string"、"boolean"、"object"、"function" 和 "undefined"。

(2)Function对象能不能直接运用构造函数创建一个新的函数呢?答案是肯定的。
var abc = new Function("x","y","return x*y;"); 
alert(abc(2,3)); // "6"

(3)var abc=function(x,y){ return x+y; } alert(abc(2,3)); // "5"
上面的操作其实就等于换个方式去定义函数,这种用法是我们比较频繁遇到的。例如我们在设定一个DOM元素事件处理函数的时候,
我们通常都不会为他们定名字,而是赋予它的对应事件引用一个匿名函数。  

(4)对匿名函数的调用其实还有一种做法,也就是我们看到的jQuery片段——使用()将匿名函数括起来,然后后面再加一对小括号(包含参数列表)
alert((function(x,y){return x+y;})(2,3));// "5" 
alert((new Function("x","y","return x*y;"))(2,3));// "6"

(5)闭包,其实就是指程序语言中能让代码调用已运行的函数中所定义的局部变量。 
var abc=function(y){ 
       var x=y;// 这个是局部变量 
       return function(){ 
       alert(x++);// 就是这里调用了闭包特性中的一级函数局部变量的x,并对它进行操作 
       alert(y--);// 引用的参数变量也是自由变量 
       }}(5);// 初始化 
       abc();// "5" "5" 
       abc();// "6" "4" 
       abc();// "7" "3" 
       alert(x);// 报错!“x”未定义! 


 





 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值