JavaScript中定义函数的三种方法
作者:junjie 时间:2024-05-09 10:37:04
在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,定义函数,方法
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python curses内置颜色用法实例
2021-07-27 02:41:35
Dreamweaver小技巧:超高速下载图像
2009-07-14 21:59:00
![](https://img.aspxhome.com/file/UploadPic/20072/20072311307259s.jpg)
python中apply函数详情
2023-06-03 14:58:15
![](https://img.aspxhome.com/file/2023/1/87941_0s.png)
Python实现访问者模式详情
2021-02-16 05:37:51
Python urlopen 使用小示例
2022-08-23 19:54:55
MySQL中USING 和 HAVING 用法实例简析
2024-01-14 22:07:47
pycharm重命名文件的方法步骤
2021-10-21 23:16:42
![](https://img.aspxhome.com/file/2023/7/128337_0s.png)
Django 数据库同步操作技巧详解
2024-01-28 02:26:14
![](https://img.aspxhome.com/file/2023/5/112545_0s.png)
selenium 多窗口切换的实现(windows)
2021-08-17 03:58:54
如何实现在下拉菜单里输入文字?
2010-06-03 10:31:00
js用星投票的示例代码
2007-12-29 13:11:00
![](https://img.aspxhome.com/file/UploadPic/200712/29/20071229131618418s.gif)
Python使用PyYAML库读写yaml文件的方法
2021-03-26 03:53:32
python如何运行js语句
2022-04-10 02:34:27
![](https://img.aspxhome.com/file/2023/3/81603_0s.png)
20行python代码的入门级小游戏的详解
2023-07-15 01:25:31
python实现猜单词游戏
2023-01-22 22:32:43
![](https://img.aspxhome.com/file/2023/5/107865_0s.gif)
Python高级特性 切片 迭代解析
2022-03-28 14:32:49
![](https://img.aspxhome.com/file/2023/5/84915_0s.png)
原生js拖拽实现图形伸缩效果
2024-04-16 08:55:27
![](https://img.aspxhome.com/file/2023/9/136819_0s.jpg)
python添加模块搜索路径方法
2023-11-20 09:29:45
JS获取当前时间的实例代码(昨天、今天、明天)
2024-04-23 09:28:36
轻轻松松学习JavaScript
2024-06-07 15:51:08