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 相关文章推荐
jQuery 表单验证扩展代码(二)
Oct 20 Javascript
JQuery实现用户名无刷新验证的小例子
Mar 22 Javascript
Javascript页面添加到收藏夹的简单方法
Aug 07 Javascript
js截取固定长度的中英文字符的简单实例
Nov 22 Javascript
yepnope.js使用详解及示例分享
Jun 23 Javascript
node.js中的buffer.toJSON方法使用说明
Dec 14 Javascript
jquery设置css样式的多种方法(总结)
Feb 21 Javascript
vue form check 表单验证的实现代码
Dec 09 Javascript
深入理解Vue keep-alive及实践总结
Aug 21 Javascript
nuxt.js添加环境变量,区分项目打包环境操作
Nov 06 Javascript
vue+echarts实现中国地图流动效果(步骤详解)
Jan 27 Vue.js
详解Vue.js 可拖放文本框组件的使用
Mar 03 Vue.js
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
ninety plus是什么?ninety plus咖啡好吗?
2021/03/04 新手入门
php生成文件
2007/01/15 PHP
Uncaught exception com_exception with message Failed to create COM object
2012/01/11 PHP
谨慎使用PHP的引用原因分析
2012/09/06 PHP
Laravel框架中Blade模板的用法示例
2017/08/30 PHP
YII2框架中添加自定义模块的方法实例分析
2020/03/18 PHP
TP框架实现上传一张图片和批量上传图片的方法分析
2020/04/23 PHP
兼容IE和FF的js脚本代码小结(比较常用)
2010/12/06 Javascript
js实现仿网易点击弹出提示同时背景变暗效果
2015/08/13 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
2015/08/19 Javascript
详解jQuery Mobile自定义标签
2016/01/06 Javascript
js 调用百度分享功能
2017/02/27 Javascript
Ext JS 实现建议词模糊动态搜索功能
2017/05/13 Javascript
vue做移动端适配最佳解决方案(亲测有效)
2018/09/04 Javascript
基于vue-cli npm run build之后vendor.js文件过大的解决方法
2018/09/27 Javascript
使用typescript构建Vue应用的实现
2019/08/26 Javascript
Vue 自定义指令功能完整实例
2019/09/17 Javascript
基于JavaScript实现单例模式
2019/10/30 Javascript
vue 使用vant插件做tabs切换和无限加载功能的实现
2020/11/04 Javascript
[01:38]完美世界DOTA2联赛PWL S3 集锦第四期
2020/12/21 DOTA
Python使用cookielib模块操作cookie的实例教程
2016/07/12 Python
Python如何为图片添加水印
2016/11/25 Python
PyQt5每天必学之进度条效果
2018/04/19 Python
python内置数据类型之列表操作
2018/11/12 Python
python实现nao机器人手臂动作控制
2019/04/29 Python
OpenCV搞定腾讯滑块验证码的实现代码
2019/05/18 Python
Python实现最大子序和的方法示例
2019/07/05 Python
python实现3D地图可视化
2020/03/25 Python
基于Python的图像阈值化分割(迭代法)
2020/11/20 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
La Redoute英国官网:法国时尚品牌
2017/04/27 全球购物
小学毕业家长寄语
2014/01/19 职场文书
课改先进个人汇报材料
2014/01/26 职场文书
高中毕业生登记表自我鉴定范文
2014/03/18 职场文书
毕业生实习期转正自我鉴定
2014/09/26 职场文书
2014年保育员个人工作总结
2014/12/02 职场文书