Js中的函数直接量

作者:LuLi 来源:SimpleLife 时间:2007-12-21 19:15:00 

这几天一直在看《Pro JavaScript Techniques》,书中有不少优美、健壮代码,让我不得不惊叹老外对语言这东西的研究程度之深,应用之灵活,很受启发。

在一些框架代码中偶尔会看到这样的写法:

代码一:


var tempObject = function doFunction() {
  ...
}(); 


代码二:


(function doFunction() {
  ...
})(); 


如果我把这个单独拿出来,你可能也一眼就看出来这段代码的巧妙之处了--它在构造函数直接量的同时直接运行了此函数,而第二种代码相对第一种而言更简洁了(PS:第二种代码用一对小括号避免了编译错误)。

在实际的代码中利用JS的这个小特性,我们可以让代码更优美,例如我们临时需要一个函数定义、执行,那么我们可以这样做。


(function (){alert("ok");})(); 


这样函数执行完毕就销毁了,代码清晰,简洁明了。

再看一个函数嵌套执行的例子:


function doClick(id){
   (function(){
      (function(){
         alert(id);
      })();
   })();
}

 


当事件驱动doClick函数时,那么里面的两个嵌套函数就可以“无声无息”地执行了。

标签:函数,直接量,js
0
投稿

猜你喜欢

  • 浏览器事件循环与vue nextTicket的实现

    2024-05-09 09:25:26
  • Python进程间通信Queue实例解析

    2023-11-06 13:50:08
  • Python命令行定时任务自动化工作流程

    2023-01-01 20:52:51
  • python爬虫之urllib,伪装,超时设置,异常处理的方法

    2022-07-23 23:47:10
  • ORACLE时间函数(SYSDATE)深入理解

    2024-01-18 05:15:14
  • Golang异常控制处理程序错误流程

    2024-02-04 15:55:28
  • python版微信跳一跳游戏辅助

    2021-08-16 09:03:19
  • Vue实现类似Spring官网图片滑动效果方法

    2024-04-30 10:29:04
  • Python绘制柱状图可视化神器pyecharts

    2023-06-07 12:38:41
  • sql存储过程获取汉字拼音头字母函数

    2011-11-03 16:58:05
  • 深入浅析Python 命令行模块 Click

    2022-12-13 19:41:40
  • Django调用百度AI接口实现人脸注册登录代码实例

    2023-10-13 23:07:14
  • javascript实现Table排序的方法

    2024-04-19 10:16:19
  • Linux系统中为php添加pcntl扩展

    2023-09-04 02:58:15
  • 利用python实现凯撒密码加解密功能

    2023-06-20 01:59:16
  • PHP递归调用数组值并用其执行指定函数的方法

    2023-09-05 15:35:04
  • mysql 8.0.28 安装配置方法图文教程

    2024-01-16 16:40:26
  • mac下安装mysql忘记密码的修改方法

    2024-01-25 17:34:01
  • 使用MySQL Slow Log来解决MySQL CPU占用高的问题

    2024-01-25 01:43:35
  • MYSQL输入密码后闪退现象的解决方法

    2024-01-19 15:06:08
  • asp之家 网络编程 m.aspxhome.com