浅谈JS函数定义方式的区别

 更新时间:2016年10月30日 10:42:57   投稿:jingxian  
下面小编就为大家带来一篇浅谈JS函数定义方式的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

关于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函数定义方式的区别全部内容了,希望大家多多支持脚本之家~

相关文章

  • Three.js物理引擎Cannon.js创建简单应用程序

    Three.js物理引擎Cannon.js创建简单应用程序

    这篇文章主要为大家介绍了Three.js物理引擎Cannon.js创建简单应用程序详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • JavaScript中的this引用(推荐)

    JavaScript中的this引用(推荐)

    this是javascript的一个关键字,随着函数使用场合不同,this的值会发生变化。这篇文章主要介绍了JavaScript中的this引用的相关资料,非常不错,需要的朋友可以参考下
    2016-08-08
  • JavaScript实现字符串截取的三个方法总结

    JavaScript实现字符串截取的三个方法总结

    在 JavaScript 中,可以使用 substr()、slice() 和 substring() 方法截取字符串。这篇文章就来通过一些示例和大家聊聊这些方法的具体操作,需要的可以参考一下
    2023-02-02
  • JS TypeScript的Map对象及联合类型实战

    JS TypeScript的Map对象及联合类型实战

    这篇文章主要介绍了JS TypeScript的Map对象及联合类型实战,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • JavaScript通过filereader接口读取文件

    JavaScript通过filereader接口读取文件

    这篇文章主要为大家详细介绍了通过filereader接口读取文件,使用readAsDataURL方法预览图片的相关方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • JavaScript中的eval()函数使用介绍

    JavaScript中的eval()函数使用介绍

    这篇文章主要介绍了JavaScript中的eval()函数使用介绍,本文讲解了eval()的使用、eval()的返回值、变量环境(variable environment)等内容,需要的朋友可以参考下
    2014-12-12
  • 详解js树形控件—zTree使用总结

    详解js树形控件—zTree使用总结

    本篇文章主要介绍了js树形控件—zTree使用总结,树形控件的使用是应用开发过程中必不可少的。zTree 是一个依靠 jQuery 实现的多功能 “树插件”。优异的性能、灵活的配置、多种功能的组合是 zTree 最大优点.
    2016-12-12
  • JavaScript中常见的数据格式化方式详解

    JavaScript中常见的数据格式化方式详解

    这篇文章主要为大家详细介绍了JavaScript中常见的数据格式化方式,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以了解一下
    2023-12-12
  • JavaScript的变量作用域深入理解

    JavaScript的变量作用域深入理解

    深入理解JavaScript的变量作用域,需要的朋友可以参考下。
    2009-10-10
  • js实现三张图(文)片一起切换的banner焦点图

    js实现三张图(文)片一起切换的banner焦点图

    这篇文章主要介绍了js实现三张图(文)片一起切换的banner焦点图,推荐给大家,有需要的小伙伴可以参考下。
    2015-08-08

最新评论