JS函数定义方式的区别介绍


Posted in Javascript onMarch 22, 2016

关于JS的函数定义方式有以下两种:

(1)典型的函数声明

function slide(arguments){ 
//...code
}

(2)以函数表达式的形式定义函数

var slide = function(arguments){
//...code
}

虽然上面两种方式逻辑上是等价的,但是还是有点小区别:

区别一:例一中的函数会在代码执行以前被加载到作用域中,而例二则是在代码执行到那一行的时候才会有定 义;
区别二:函数声明会给函数指定一个名字,而函数表达式则是创建一个匿名函数,然后将这个匿名函数赋给一个变量;

看下面例子:

function factorial(num){
if(num<=1){
return 1;
}
else {
return num*arguments.callee(num-1);
}
}
var anotherFactorial = factorial;
factorial = null;
console.log(anotherFactorial);//输出factorial(){},有函数名
若是以函数表达式定义
var factorial = function(num){
//...code
}
//...code
console.log(anotherFactorial);//输出function(){},匿名函数

以上这篇JS函数定义方式的区别介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
非常不错的功能强大代码简单的管理菜单美化版
Jul 09 Javascript
EXT中xtype的含义分析
Jan 07 Javascript
在jQuery1.5中使用deferred对象 着放大镜看Promise
Mar 12 Javascript
JS实现侧悬浮浮动实例代码
Nov 29 Javascript
多引号嵌套的变量命名的问题
May 09 Javascript
Jquery $.getJSON 在IE下的缓存问题解决方法
Oct 10 Javascript
jQuery实现灰蓝风格标准二级下拉菜单效果代码
Aug 31 Javascript
jQuery Mobile页面返回不需要重新get
Apr 26 Javascript
jQuery实现的右下角广告窗体跟随效果示例
Sep 16 Javascript
react 创建单例组件的方法
Apr 26 Javascript
vue实现百度语音合成的实例讲解
Oct 14 Javascript
解决vue.js提交数组时出现数组下标的问题
Nov 05 Javascript
基于javascript制作经典传统的拼图游戏
Mar 22 #Javascript
javascript函数命名的三种方式及区别介绍
Mar 22 #Javascript
javascript仿京东导航左侧分类导航下拉菜单效果
Nov 25 #Javascript
JS中多种方式创建对象详解
Mar 22 #Javascript
基于jquery实现无限级树形菜单
Mar 22 #Javascript
javascript的几种继承方法介绍
Mar 22 #Javascript
基于javascript实现文字无缝滚动效果
Mar 22 #Javascript
You might like
php xml留言板 xml存储数据的简单例子
2009/08/24 PHP
PHP IPV6正则表达式验证代码
2010/02/16 PHP
QQ登录 PHP OAuth示例代码
2011/07/20 PHP
php 操作符与控制结构
2012/03/07 PHP
基于PHP导出Excel的小经验 完美解决乱码问题
2013/06/10 PHP
PHP中的socket_read和socket_recv区别详解
2015/02/09 PHP
JavaScript使用prototype定义对象类型(转)[
2006/12/22 Javascript
JavaScript Event学习第二章 Event浏览器兼容性
2010/02/07 Javascript
基于jquery实现的类似百度搜索的输入框自动完成功能
2011/08/23 Javascript
javascript实例分享---具有立体效果的图片特效
2014/06/08 Javascript
jQuery实现可用于博客的动态滑动菜单
2015/03/09 Javascript
JavaScript学习笔记之ES6数组方法
2016/03/25 Javascript
js实现按座位号抽奖
2017/04/05 Javascript
Vue精简版风格概述
2018/01/30 Javascript
Vuex的初探与实战小结
2018/11/26 Javascript
详解vue-cli@2.x项目迁移日志
2019/06/06 Javascript
详解vue中v-bind:style效果的自定义指令
2020/01/21 Javascript
vant实现购物车功能
2020/06/29 Javascript
VUE中setTimeout和setInterval自动销毁案例
2020/09/07 Javascript
python排序方法实例分析
2015/04/30 Python
django2 快速安装指南分享
2018/01/05 Python
Python实现将数据写入netCDF4中的方法示例
2018/08/30 Python
Python常用爬虫代码总结方便查询
2019/02/25 Python
K最近邻算法(KNN)---sklearn+python实现方式
2020/02/24 Python
浅析python连接数据库的重要事项
2021/02/22 Python
使用html5 canvas绘制圆环动效
2019/06/03 HTML / CSS
有750多个顶级品牌的瑞士时尚在线:ABOUT YOU
2017/01/04 全球购物
Kathmandu澳洲户外商店:新西兰户外运动品牌
2017/11/12 全球购物
酒店管理自荐信
2013/10/23 职场文书
求职简历中的自我评价分享
2013/12/08 职场文书
2014年两会学习心得范例
2014/03/17 职场文书
关爱留守儿童倡议书
2014/04/15 职场文书
出生证明格式
2015/06/15 职场文书
spring cloud gateway中如何读取请求参数
2021/07/15 Java/Android
vue代码分块和懒加载非必要资源文件
2022/04/11 Vue.js
阿里云服务器(windows)手动部署FTP站点详细教程
2022/08/05 Servers