function调用

125 阅读1分钟

js函数的四种调用方式

1.一般声明函数调用

function fun () {
    console.log('具名调用')
}
fun()

2.作为对象方法调用

var obj = {
    fun: function() {
        console.log('作为对象方法调用')
    }
}
obj.fun()
// 和 1 的区别是this的指向不同

3.通过apply()和call()调用

function fun(a, b) {
    console.log(a,b,c,d)
}

var obj = {
    c: 1,
    d: 2
}

fun.apply(obj, ['3','4'])     // '3' '4' 1 2
// 原本直接调用 fun 它的 this 指向是 window ,但是 apply 将 this 变成 obj
fun.call(obj, '3', '4')     // '3' '4' 1 2
// call同理

4.通过new调用

var Obj = {
    fun: function () {
        console.log('new调用')
    }
}

Obj obj = new Obj()
obj.fun()