关于javascript function对象那些迷惑分析


Posted in Javascript onOctober 24, 2011

js中function对象是一个令人着迷的东西,但由于他太过于灵活,常常令人迷惑,下面我贴一些代码:

大多数人这样简写:

function test () {}

《jsvascript语言精粹》整本书这样写:

var test = function () {}

函数可以立即运行并赋值:

var test = function () {} () // test === undefined 
var test2 = function () {return '糖饼'}() // test2 === '糖饼'

但是函数简写方式不能直接运行,下面代码会报错:
function test() {}() // SyntaxError: syntax error

如果用”()“运行符包裹后正常:

(function test () {})();

其实这个 函数名 test 已经没有意义了,去掉就成了匿名函数,仍然可以自动执行函数体内代码,常用的匿名函数写法:

(function () {})();

匿名函数还可以这么写可能会”美观“一点:

(function () {}());

看到这,刚接触js哥么是否要疯掉了?我曾看到我项目搞C语言的哥么见过匿名函数后立即石化了…

Javascript 相关文章推荐
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
Aug 14 Javascript
使用jQuery简化Ajax开发 Ajax开发入门
Oct 14 Javascript
JS OOP包机制,类创建的方法定义
Nov 02 Javascript
JQuery中的html()、text()、val()区别示例介绍
Sep 01 Javascript
一个JavaScript去除字符串末尾的空白实例代码
Sep 22 Javascript
使用百度地图api实现根据地址查询经纬度
Dec 11 Javascript
jQuery实现首页顶部可伸缩广告特效代码
Apr 15 Javascript
js实现无缝滚动图
Feb 22 Javascript
在Angular中使用JWT认证方法示例
Sep 10 Javascript
使用JavaScript破解web
Sep 28 Javascript
关于JSON解析的实现过程解析
Oct 08 Javascript
vue3.0中友好使用antdv示例详解
Jan 05 Vue.js
文本框根据输入内容自适应高度的代码
Oct 24 #Javascript
js创建数据共享接口——简化框架之间相互传值
Oct 23 #Javascript
javascript模版引擎-tmpl的bug修复与性能优化分析
Oct 23 #Javascript
js面向对象设计用{}好还是function(){}好(构造函数)
Oct 23 #Javascript
jQuery EasyUI API 中文文档 - TimeSpinner时间微调器
Oct 23 #Javascript
利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码
Oct 22 #Javascript
js两行代码按指定格式输出日期时间
Oct 21 #Javascript
You might like
linux下使用ThinkPHP需要注意大小写导致的问题
2011/08/02 PHP
php环境配置之CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI比较?
2011/10/17 PHP
PHP设计模式之装饰者模式
2012/02/29 PHP
PHP系列学习之日期函数使用介绍
2012/08/18 PHP
使用session判断用户登录用户权限(超简单)
2013/06/08 PHP
PHP使用内置dir类实现目录遍历删除
2015/03/31 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
javascript中的prototype属性实例分析说明
2010/08/09 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
学习javascript面向对象 理解javascript对象
2016/01/04 Javascript
javascript 注释代码的几种方法总结
2017/01/04 Javascript
javascript判断回文数详解及实现代码
2017/02/03 Javascript
angularjs实现下拉列表的选中事件示例
2017/03/03 Javascript
ES6中Iterator与for..of..遍历用法分析
2017/03/31 Javascript
vue-cli+webpack在生成的项目中使用bootstrap实例代码
2017/05/26 Javascript
简单谈谈CommonsChunkPlugin抽取公共模块
2017/12/31 Javascript
在vue中封装可复用的组件方法
2018/03/01 Javascript
vue2 v-model/v-text 中使用过滤器的方法示例
2019/05/09 Javascript
element-ui组件中input等的change事件中传递自定义参数
2019/05/22 Javascript
[03:48]显微镜下的DOTA2第四期——TP动作
2014/06/20 DOTA
Python实现k-means算法
2018/02/23 Python
padas 生成excel 增加sheet表的实例
2018/12/11 Python
详解python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决
2019/08/27 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
如何解决python多种版本冲突问题
2020/10/13 Python
NYX Professional Makeup官方网站:专业彩妆和美容产品
2019/10/29 全球购物
澳大利亚Rockwear官网:女子瑜伽、健身和运动服
2021/01/26 全球购物
给领导的致歉信范文
2014/01/13 职场文书
表彰会主持词
2014/03/26 职场文书
承诺书范本大全
2015/05/04 职场文书
《百分数的认识》教学反思
2016/02/19 职场文书
用Python提取PDF表格的方法
2021/04/11 Python
详解PHP设计模式之依赖注入模式
2021/05/25 PHP
go goroutine 怎样进行错误处理
2021/07/16 Golang
海康机器人重磅发布全新算法开发平台VM4.2
2022/04/21 数码科技
Promise静态四兄弟实现示例详解
2022/07/07 Javascript