关于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 相关文章推荐
Javascript 面向对象(三)接口代码
May 23 Javascript
jquery插件制作 表单验证实现代码
Aug 17 Javascript
解析offsetHeight,clientHeight,scrollHeight之间的区别
Nov 20 Javascript
jQuery取id有.的值的方法
May 21 Javascript
JavaScript实现动态创建CSS样式规则方案
Sep 06 Javascript
jQuery实现的进度条效果
Jul 15 Javascript
jQuery+HTML5美女瀑布流布局实现方法
Sep 21 Javascript
[js高手之路]单例模式实现模态框的示例
Sep 01 Javascript
Node 升级到最新稳定版的方法分享
May 17 Javascript
vue element-ui之怎么封装一个自己的组件的详解
May 20 Javascript
通过seajs实现JavaScript的模块开发及按模块加载
Jun 06 Javascript
Vue+Element实现网页版个人简历系统(推荐)
Dec 31 Javascript
文本框根据输入内容自适应高度的代码
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
十天学会php之第二天
2006/10/09 PHP
thinkphp中AJAX返回ajaxReturn()方法分析
2016/12/06 PHP
cakephp常见知识点汇总
2017/02/24 PHP
php使用lua+redis实现限流,计数器模式,令牌桶模式
2019/04/04 PHP
js focus不起作用的解决方法(主要是因为dom元素是否加载完成)
2010/11/05 Javascript
JavaScript 处理Iframe自适应高度(同或不同域名下)
2013/03/29 Javascript
JS隐藏参数post传值实例
2013/04/18 Javascript
纯文字版返回顶端的js代码
2013/08/01 Javascript
使用jquery实现的一个图片延迟加载插件(含图片延迟加载原理)
2014/06/05 Javascript
Backbone.js中的集合详解
2015/01/14 Javascript
JavaScript操作XML文件之XML读取方法
2015/06/09 Javascript
jQuery中extend函数详解
2015/07/13 Javascript
微信小程序 video组件详解
2016/10/25 Javascript
Bootstrap Modal对话框如何在关闭时触发事件
2016/12/02 Javascript
JS组件系列之MVVM组件 vue 30分钟搞定前端增删改查
2017/04/28 Javascript
JavaScript实现三级联动菜单实例代码
2017/06/26 Javascript
Vue2.0 组件传值通讯的示例代码
2017/08/01 Javascript
微信小程序导航栏滑动定位功能示例(实现CSS3的positionsticky效果)
2019/01/24 Javascript
layUI实现列表查询功能
2019/07/27 Javascript
React+Redux实现简单的待办事项列表ToDoList
2019/09/29 Javascript
JS实现横向轮播图(中级版)
2020/01/18 Javascript
Js图片点击切换轮播实现代码
2020/07/27 Javascript
JS如何调用WebAssembly编译出来的.wasm文件
2020/11/05 Javascript
[03:39]DOTA2英雄梦之声_第05期_幽鬼
2014/06/23 DOTA
Python 错误和异常小结
2013/10/09 Python
深入分析在Python模块顶层运行的代码引起的一个Bug
2014/07/04 Python
使用相同的Apache实例来运行Django和Media文件
2015/07/22 Python
使用Python的Bottle框架写一个简单的服务接口的示例
2015/08/25 Python
Python实现登陆文件验证方法
2018/10/06 Python
浅谈python str.format与制表符\t关于中文对齐的细节问题
2019/01/14 Python
使用pyqt 实现重复打开多个相同界面
2019/12/13 Python
瑞典最好的运动鞋专卖店:Sneakersnstuff
2016/08/29 全球购物
内容编辑个人求职信
2013/12/10 职场文书
2016五四青年节活动总结范文
2016/04/06 职场文书
vue二维数组循环嵌套方式 循环数组、循环嵌套数组
2022/04/24 Vue.js
Python pyecharts案例超市4年数据可视化分析
2022/08/14 Python