关于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 二进制运算技巧解析
Nov 27 Javascript
JQGrid的用法解析(列编辑,添加行,删除行)
Nov 08 Javascript
详解JavaScript中shift()方法的使用
Jun 09 Javascript
Javascript中arguments用法实例分析
Jun 13 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
Feb 18 Javascript
Node.js服务器开启Gzip压缩教程
Aug 11 Javascript
JavaScript中变量提升与函数提升经典实例分析
Jul 26 Javascript
vue实现微信分享功能
Nov 28 Javascript
react native 原生模块桥接的简单说明小结
Feb 26 Javascript
详解JavaScript作用域和作用域链
Mar 19 Javascript
解决VUE项目localhost端口服务器拒绝连接,只能用127.0.0.1的问题
Aug 14 Javascript
关于javascript中的promise的用法和注意事项(推荐)
Jan 15 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 进度条实现代码
2009/03/10 PHP
PHPExcel读取Excel文件的实现代码
2011/12/06 PHP
PHP使用CURL获取302跳转后的地址实例
2014/05/04 PHP
php使用Imagick生成图片的方法
2015/07/31 PHP
php短信接口代码
2016/05/13 PHP
老生常谈php中传统验证与thinkphp框架(必看篇)
2017/06/10 PHP
PHP实现打包zip并下载功能
2018/06/12 PHP
php测试kafka项目示例
2020/02/06 PHP
JavaScript中的prototype使用说明
2010/04/13 Javascript
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
键盘上一张下一张兼容IE/google/firefox等浏览器
2014/01/28 Javascript
javascript 寻找错误方法整理
2014/06/15 Javascript
一个JavaScript获取元素当前高度的实例
2014/10/29 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
2016/02/21 Javascript
jQuery插件EasyUI设置datagrid的checkbox为禁用状态的方法
2016/08/05 Javascript
jQuery中的insertBefore(),insertAfter(),after(),before()区别介绍
2016/09/01 Javascript
老生常谈的跨域处理
2017/01/11 Javascript
Vue+Element使用富文本编辑器的示例代码
2017/08/14 Javascript
详解最新vue-cli 2.9.1的webpack存在问题
2017/12/16 Javascript
vue-scroller记录滚动位置的示例代码
2018/01/17 Javascript
详解Vue.js 作用域、slot用法(单个slot、具名slot)
2019/10/15 Javascript
vue中的使用token的方法示例
2020/03/10 Javascript
微信小程序实现翻牌抽奖动画
2020/09/21 Javascript
[51:28]EG vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/16 DOTA
Selenium 模拟浏览器动态加载页面的实现方法
2018/05/16 Python
24式加速你的Python(小结)
2019/06/13 Python
Python reshape的用法及多个二维数组合并为三维数组的实例
2020/02/07 Python
django有外键关系的两张表如何相互查找
2020/02/10 Python
波兰最大的电商平台:Allegro.pl
2021/02/06 全球购物
教师自我鉴定范文
2014/03/20 职场文书
病媒生物防治方案
2014/05/13 职场文书
环保倡议书300字
2014/05/15 职场文书
2014年辅导员工作总结
2014/11/18 职场文书
员工加薪申请报告
2015/05/15 职场文书
行政后勤人员工作计划应该怎么写?
2019/08/16 职场文书
面试中老生常谈的MySQL问答集锦夯实基础
2022/03/13 MySQL