JavaScript中定义函数的三种方法

 更新时间:2015年03月12日 10:22:36   投稿:junjie  
这篇文章主要介绍了JavaScript中定义函数的三种方法,本文直接给出代码实现,同时给出了构造函数的相关知识,需要的朋友可以参考下

在JavaScript的世界里,定义函数的方法多种多样,这正是JavaScript灵活性的体现,但是正是这个原因让初学者摸不着头脑,尤其对于没有 语言基础的同学。正所谓条条大道通罗马,但是如果道路太多,会让行路者不知所措,因为不知道走那条路才是正途,呵呵,废话一大篇,闲言少叙,先看代码:

复制代码 代码如下:

/*第一种方法,使用function语句,格式如下*/
function fn(){
  alert("这是使用function语句进行函数定义");
}
fn();

/*第二种方法,使用Function()构造函数克隆函数*/
var F = new Function("a","b","alert(a+b)");
F(a,b);

其实相当于如下代码:
function F(a,b){
  alert(a+b);
}

/*第三种方法,使用函数直接量*/
var zhenn = function(){
  alert("zhenn");
}
zhenn();

其中用“function语句”和使用“函数直接量”来定义函数的方法似乎比较常见,也比较好理解,在此不多说。针对使用Function()构造函数克 隆函数,一般很少用,因为一个函数通常有多条语句组成,如果将他们以字符串的形式作为参数传递,难免会使得代码的可读性很差。

在这里再顺便提一下构造函数吧,其实从字面上理解,构造函数似乎也是函数,其实它并不是函数,而只是一种函数模型。举个不恰当的例子,构造函数相当于一部 刚组装好的车子,无论远看还是近看,它都是一部车子,但是还没有加油(代表在使用前的一个必要步骤),所以它并不能启动。如果想要这部车子正常行驶,就必 须给它加上油,其实这个过程就等同于构造函数的实例化,否则它并不能正常运行!看下面这个例子:

复制代码 代码如下:

function Fn(){    //定义构造函数  
  this.elem ="这里是使用function()构造函数定义函数,呵呵";  
  this.fn = function(){    
    alert("这是使用function()构造函数定义函数,嘿嘿");  
  }
}
var f = new Fn();  //实例化
alert(f.elem);
f.fn();

相关文章

  • JavaScript 开发工具webstrom使用指南

    JavaScript 开发工具webstrom使用指南

    本文给大家推荐了一款非常热门的javascript开发工具webstrom,着重介绍了webstrom的特色功能、设置技巧、使用心得以及快捷键汇总,非常的全面。
    2014-12-12
  • javascript利用canvas实现鼠标拖拽功能

    javascript利用canvas实现鼠标拖拽功能

    这篇文章主要为大家详细介绍了javascript利用canvas实现鼠标拖拽功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-07-07
  • js使用文件流下载csv文件的实现方法

    js使用文件流下载csv文件的实现方法

    这篇文章主要给大家介绍了关于js使用文件流下载csv文件的实现方法,文中通过示例代码介绍的非常详细,对大家学习或者使用js具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • 原生JS实现的自动轮播图功能详解

    原生JS实现的自动轮播图功能详解

    这篇文章主要介绍了原生JS实现的自动轮播图功能,结合实例形式详细分析了基于原生js实现轮播图的原理、操作步骤及操作注意事项,需要的朋友可以参考下
    2018-12-12
  • js scrollTop如何到达指定位置

    js scrollTop如何到达指定位置

    很早之前就想分享这篇心得,幸之今天能在这里完成,好了,话不多说,进入正题。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • select标签设置默认选中的选项方法

    select标签设置默认选中的选项方法

    下面小编就为大家分享一篇select标签设置默认选中的选项方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • 浅谈JS中小数相加不精确的原因

    浅谈JS中小数相加不精确的原因

    Javascript在处理数字问题时,我们有可能遇到小数相加不准确的问题,本文主要介绍了浅谈JS中小数相加不精确的原因,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2023-04-04
  • webpack file-loader和url-loader的区别

    webpack file-loader和url-loader的区别

    这篇文章主要介绍了webpack file-loader和url-loader的区别,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • js实现鼠标点击页面弹出自定义文字效果

    js实现鼠标点击页面弹出自定义文字效果

    这篇文章主要为大家详细介绍了js实现鼠标点击页面弹出自定义文字效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • 浅谈Javascript编程风格

    浅谈Javascript编程风格

    这篇文章主要介绍了浅谈Javascript编程风格,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10

最新评论