函数高级应用
1.函数的定义方式
(1)、函数声明
function fn(){
console.log('this is a function')
}
(2)、函数表达式
var fn = function(){
console.log('赋值表达式函数')
}
(3)、内置构造函数的形式
var fn3 = new Function("num1", "num2", "return num1+num2");
console.log(fn3(2, 3));
1.函数的定义方式
(1)、函数声明
function fn(){
console.log('this is a function')
}
(2)、函数表达式
var fn = function(){
console.log('赋值表达式函数')
}
(3)、内置构造函数的形式
var fn3 = new Function("num1", "num2", "return num1+num2");
console.log(fn3(2, 3));
推荐使用第二种形式,第三种用的相对较少,但也是必须掌握的内容。
演示示例:函数的定义方式
2.函数的调用方法
(1)、函数名()
var fn1 = function () {
console.log("函数名()");
}
window.fn1();
fn1();
- 、自调用
var fn2 = (function () {
console.log("自调用");
})();
- 、call()调用
fn1.call();
- 、对象中的函数调用
var obj1 = {
name: "小刚",
say: function () {
console.log(this.name + "喜欢吃辣条!")
}
}
obj1.say();
- 、数组中函数调用
var arr = [
100,
"哈哈",
function () {
console.log(this);
console.log(this[1] + "我是数组中的元素,也是函数");
},
function () {
console.log("66666");
},
true
];
console.log(arr[2]);
arr[2]();//
arr[3]();
- 、函数作为参数的调用
function fn3(x) {
x();
}
fn3(function () { console.log("我是函数也是参数"); });
(7)、函数作为返回值的调用
function fn4() {
return function () { console.log("我是函数也是返回值!") }
}
fn4()();
闭包
- 、定义
闭包就是能够读取其他函数内部变量的函数,由于在 Javascript 语言中,只有函数内部的子函数才能读取局部变量,因此可以把闭包简单理解成 “定义在一个函数内部的函数”。所以,在本质上,闭包就是将函数内部和函数外部连接起来的一座桥梁。
闭包的用途:
可以在函数外部读取函数内部成员
让函数内成员始终存活在内存中
posted on 2021-12-12 17:52 jaksgfdshkv 阅读(33) 评论(0) 编辑 收藏 举报