JS函数的几种定义方式分析


Posted in Javascript onDecember 17, 2015

本文实例讲述了JS函数的几种定义方式。分享给大家供大家参考,具体如下:

JS函数的定义方式比较灵活,它不同于其他的语言,每个函数都是作为一个对象被维护和运行的。

先看几种常用的定义方式:

function func1([参数]){/*函数体*/}
var func2=function([参数]){/*函数体*/};
var func3=function func4([参数]){/*函数体*/};
var func5=new Function();

上述第一种方式是最常用的方式,不用多说。
第二种是将一匿名函数赋给一个变量,调用方法:func2([函数]);
第三种是将func4赋给变量func3,调用方法:func3([函数]);或func4([函数]);
第四种是声明func5为一个对象。

再看看它们的区别:

function func(){
  //函数体
}
//等价于
var func=function(){
  //函数体
}

但同样是定义函数,在用法上有一定的区别。

<script>
//这样是正确的
func(1);
function func(a)
{
  alert(a);
}
</script>
<script>
//这样是错误的,会提示func未定义,主要是在调用func之前没有定义
func(1);
var func = function(a)
{
  alert(a);
}
//这样是正确的,在调用func之前有定义
var func = function(a)
{
  alert(a);
}
func(1);
</script>

用同样的方法可以去理解第三种定义方式。

第四种定义方式也是需要声明对象后才可以引用。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
二级域名或跨域共享Cookies的实现方法
Aug 07 Javascript
了解了这些才能开始发挥jQuery的威力
Oct 10 Javascript
js处理php输出时间戳对不上号的解决方法
Jun 20 Javascript
Vue.js学习笔记之 helloworld
Aug 14 Javascript
老生常谈Javascript中的原型和this指针
Oct 09 Javascript
JavaScript 计算笛卡尔积实例详解
Dec 02 Javascript
浅谈JavaScript的函数及作用域
Dec 30 Javascript
前端html中jQuery实现对文本的搜索功能并把搜索相关内容显示出来
Nov 14 jQuery
JS设计模式之观察者模式实现实时改变页面中金额数的方法
Feb 05 Javascript
js实现上传图片并显示图片名称
Dec 18 Javascript
vue ssr+koa2构建服务端渲染的示例代码
Mar 23 Javascript
浅谈实现在线预览PDF的几种解决办法
Aug 10 Javascript
js实现文字闪烁特效的方法
Dec 17 #Javascript
基于jquery实现省市联动特效
Dec 17 #Javascript
js实现网页收藏功能
Dec 17 #Javascript
详解javascript中原始数据类型Null和Undefined
Dec 17 #Javascript
JS实现合并两个数组并去除重复项只留一个的方法
Dec 17 #Javascript
JS数组合并push与concat区别分析
Dec 17 #Javascript
理解Javascript的call、apply
Dec 16 #Javascript
You might like
php+ajax实现文章自动保存的方法
2014/12/30 PHP
Linux平台PHP5.4设置FPM线程数量的方法
2016/11/09 PHP
PHP实现模拟http请求的方法分析
2017/12/20 PHP
WordPress伪静态规则设置代码实例
2020/12/10 PHP
JavaScript DOM 学习第九章 选取范围的介绍
2010/02/19 Javascript
基于jquery &amp; json的省市区联动代码
2012/06/26 Javascript
关闭ie窗口清除Session的解决方法
2014/01/10 Javascript
javascript编程异常处理实例小结
2015/11/30 Javascript
Javascript技术难点之apply,call与this之间的衔接
2015/12/04 Javascript
mvvm双向绑定机制的原理和实现代码(推荐)
2016/06/07 Javascript
详细分析jsonp的原理和实现方式
2017/11/20 Javascript
jQuery实现的鼠标响应缓冲动画效果示例
2018/02/13 jQuery
JS实现将链接生成二维码并转为图片的方法
2018/03/17 Javascript
Node.js中package.json中库的版本号(~和^)
2019/04/02 Javascript
微信小程序常用的3种提示弹窗实现详解
2019/09/19 Javascript
[03:38]2014DOTA2西雅图国际邀请赛 VG战队巡礼
2014/07/07 DOTA
跨平台python异步回调机制实现和使用方法
2013/11/26 Python
使用SAE部署Python运行环境的教程
2015/05/05 Python
Python利用ElementTree模块处理XML的方法详解
2017/08/31 Python
使用Django启动命令行及执行脚本的方法
2018/05/29 Python
对python当中不在本路径的py文件的引用详解
2018/12/15 Python
python 随机生成10位数密码的实现代码
2019/06/27 Python
Django模板标签{% for %}循环,获取制定条数据实例
2020/05/14 Python
HTML5+lufylegend实现游戏中的卷轴
2016/02/29 HTML / CSS
美国专业级皮肤病和spa品质护肤品的高级零售网站:SkinCareRx
2017/02/06 全球购物
会计电算化专业应届大学生求职信
2013/10/22 职场文书
大专毕业生自我评价分享
2013/11/10 职场文书
员工试用期考核自我鉴定
2014/04/13 职场文书
雏鹰争章活动总结
2014/05/09 职场文书
会计求职自荐信
2014/06/20 职场文书
2016习总书记系列重要讲话心得体会
2016/01/15 职场文书
2016秋季运动会开幕词
2016/03/04 职场文书
导游词之太行山青龙峡
2020/01/14 职场文书
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server
详解Python函数print用法
2021/06/18 Python
漫画「请问您今天要来点兔子吗?」最新杂志彩页公开
2022/03/24 日漫