在写js的时候,还是经常会用的匿名函数表达式,比如

 setTimeout(function() {
console.log(110);
}, 1000);

  上面那个function()就是匿名函数表达式了,这种写法的好处是书写简单快捷,不用考虑给函数取名,十分方便。

  但是,也有几个缺点:

  1. 匿名函数在栈追踪中不会显示有意义的函数名,使得调试起来很困难

  2. 匿名函数无法调用自身,只能使用arguments.callee引用

  3. 匿名函数省略了对于代码的可读性,一个有函数名的函数能见名知意

  所以,像上面的行内函数表达式很常见,也很强大有用,匿名和具名之间的区别在这点上没有任何影响,给匿名函数具名能有效避免以上的缺点,算得上是一个最佳实践了。

 setTimeout(function thisIsTest() {
console.log(110);
});

最新文章

  1. asp.net三层架构 及其中使用泛型获取实体数据介绍
  2. oracle性能优化之表设计
  3. TCP/IP详解
  4. Java日期与时间的处理/Date,String,Calendar转换
  5. codeforces 477B B. Dreamoon and Sets(构造)
  6. row_number()over(order by id) SQL顺序排列
  7. Ajax实现页面后台button click事件无刷新弹窗
  8. iOS图案锁,支持动画、图片、绘图
  9. Java---设计模块(工厂方法)
  10. 在sd卡,创建目录和文件
  11. SM干货篇:你应该具备的提问技巧!
  12. 利用ZYNQ SOC快速打开算法验证通路(4)——AXI DMA使用解析及环路测试
  13. Python-Django-Ajax
  14. LOJ#2542 随机游走
  15. 设计模式之七:模板方法模式(Template Method)
  16. 【转】Mac下升级python2.7到python3.6
  17. conda install 安装太慢怎么办?
  18. python 的内置模块 re
  19. window环境下安装Python2和Python3
  20. Servlet乱码解决

热门文章

  1. 自定义Spring Security权限控制管理(实战篇)
  2. Joomla
  3. Android App的签名打包三步骤
  4. Rendering Problems:android.support.v7.internal.widget.ActionBarOverlayLayout 解决方法
  5. expdp/impdp
  6. VS 2015 localhost访问有效 改用 IP访问 400错误 invalid hostname 修改方法
  7. hadoop分片分析
  8. 一个简单的P2P传输程序
  9. PHP制作验证码
  10. 不经过 App store 的安装方式(转)