javascript的四种函数调用方式

JavaScript函数调用详解
本文详细介绍了JavaScript中函数的四种不同调用方式:普通函数调用、作为对象方法调用、构造器调用以及使用apply或call进行调用。通过具体示例帮助读者理解每种调用方式的特点。

javascript的函数有四种调用方式,每种方式的不同之处是在于初始化的不同,下面就以实例来说明四种函数方式的调用。

一、函数调用形式

这种方式最常见是,是直接声明一个函数后调用,也是最常见的一种方式。

// 声明一个函数,并调用
function func() {
    alert("Hello World");
}
func();

// 使用函数的Lambda表达式定义函数,然后调用
var func = function() {
    alert("你好,程序员");
};
func();

二、方法调用模式

函数调用模式很简单,是最基本的调用方式。但是同样的是函数,将其赋值给一个对象的成员以后,就不一样了。将函数赋值给对象的成员后,那么这个就不在称为函数,而应该叫做方法。例如:
// 定义一个函数
var func = function() {
    alert("我是一个函数么?");
};
// 将其赋值给一个对象
var o = {};
o.fn = func; // 注意这里不要加圆括号
// 调用
o.fn();

三、构造器调用模式

这种模式是通过构造器建立对象后,来完成对函数的调用

// 定义一个构造函数
var Person = function() {
    this.name = "程序员";
    this.sayHello = function() {
        alert("你好,这里是" + this.name);
    };
};
// 调用构造器,创建对象
var p = new Person();
// 使用对象
p.sayHello();

四、apply调用模式与call调用模式

// js1.js 文件中
var func1 = function() {
    this.name = "程序员";
};
func1.apply(null);
alert(name);

// js2.js 文件
var func2 = function() {
    this.name = "程序员";
};
var o = {};
func2.apply(o);
alert(o.name);

注解:第一个文件中的 name 属性已经加载到全局对象 window 中; 而第二个文件中的 name 属性是在传入的对象 o 中,即第一个相当于函数调用,第二个相当 于方法调用。











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值