一、函数的定义:
1、自定义函数(命名函数)
function cat() { }
2、函数表达式(匿名函数)
var dog = function() { }
3、利用 new Function(‘参数1’, ‘参数2’, ‘函数体’); Function 里面的参数都必须是字符串
var pig = new Function('a', 'b', 'console.log(a + b)');
pig(1, 2);
前两种是我们平时比较常用到的函数定义的方法,后一个由于繁琐、效率低,平时用到的就比较少。
但是有一个要知道,所有的函数都是 Function 的实例(对象)
关于函数是不是属于对象,我们可以做如下检测:
console.log(pig instanceof Object);
// instanceof 检测 constructor.prototype 是否存在于参数 object 的原型链上。在就返回 true,不在就返回 false
这里直接用的是第三种定义方式,也可以用另外两种的。
得到的输出结果是 true ,说明函数属于对象
二、函数的调用
函数的调用方法有很多,接下来就向大家介绍一下
1、普通函数
var fn = function() {
console.log('在这里呀');
}
fn();
2、事件绑定函数
var btn = document.querySelector('button')
btn.onclick() = function() {}
// 点击的时候调用
3、对象方法
var o = {
Hello: function() {
console.log('在这里呀');
}
}
o.Hello();
4、构造函数
function Star() {}
new Star();//实例化调用
5、定时器函数
setInterval(function() {}, 100)
// 定时器每隔 0.1 秒,调用一次
setTimeout(function() {}, 100)
// 定时器 0.1s 后执行,只执行一次
6、立即执行函数
(function() {
console.log('在这里呀');
})()
// 不用调用,自动执行