https://cloud.tencent.com/developer/column/5236
前端基础知识分享
一、普通方式
// 声明一个函数,并调用
function func() {
console.log("Hello World");
}
func();
二、函数表达式
// 使用函数的Lambda表达式定义函数,然后调用
var func = function() {
console.log("你好,百度一下");
};//var声明了一个表达式,所以最后有分号
func();
三、方法调用模式
//将函数赋值给对象的成员后,那么这个就不在称为函数,而应该叫做方法
// 定义一个函数
var func = function() {
alert("我是一个函数么?");
};
// 将其赋值给一个对象
var o = {};
o.fn = func; // 注意这里不要加圆括号
// 调用
o.fn();
alert(o.fn === func);//打印结果是 true ,这个表明两个函数是一样的东西
但是修改一下函数的代码,结果就不一样了,因为this指向不同。
// 定义一个函数
var func = function() {
alert(this); ///这里修改了
};
// 将其赋值给一个对象
var o = {};
o.fn = func;
// 调用
o.fn(); //[object Object],在方法中th