js中函数调用

总共有四种  

1
函数调用模式   这种事最常见的 也是最简单的

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

//输出是 Hello World

或者写成这样
// 使用函数的Lambda表达式定义函数,然后调用
var func = function() {
    console.log("你好,高帆");
};
func();
//输出是 你好,高帆
//javascirpt中,函数可以用箭头语法(”=>”)定义,有时候也叫“lambda表达式”。

2

方法调用模式

将函数赋值给对象的成员后 那么这个就不在称为函数 而应该叫做方法

// 定义一个函数
var func = function() {
    console.log("我是?");
};
// 将其赋值给一个对象
var o = {};
o.fn = func; // 注意这里不要加圆括号
// 调用
o.fn();

//输出我是?

o.fn 则是方法,不是函数了

 

3

构造器模式

在一般函数模式下,this 表示 window;在对象方法模式下,this 指的是当前对象。除了这两种情况,JavaScript 中函数还可以是构造器   函数作为构造器模式使用就是在函数调用前面加上一个 new

// 定义一个构造函数
var Person = function() {
    this.name = "中国";
    this.sayHello = function() {
        console.log("你好" + this.name);
    };
};
// 调用构造器,创建对象
var p = new Person();
// 使用对象
p.sayHello();
//输出是 你好中国

首先创建一个构造函数Person,然后使用构造函数创建对象p。这里使用 new 语法。然后在使用对象调用sayHello()方法

4

apply调用模式

apply 模式既可以像函数一样使用,也可以像方法一样使用

函数名.apply(对象, 参数数组)

1、新建两个 js 文件,分别为”js1.js”与”js2.js”;

2、添加代码

// js1.js 文件中
var func1 = function() {
    this.name = "高帆";
};
func1.apply(null);
console.log(name);

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

 使用 apply 模式 可以任意的操作控制 this 的意义

js 中的函数调用有四种模式,分别是:函数式、方法式、构造 器式和 apply 式. 而这些模式中,this 的含义分别为:在函数中 this 是全局对象 window,在方 法中 this 指当前对象,在构造函数中 this 是被创建的对象,在 apply 模式中 this 可以随意的指定.。在 apply 模式中如果使用 null,就是函数模式,如果使用对象,就是方法模式。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值