var length = 1 function fn() { console.log(this.length) } var obj = { length: 100, action: function(callback) { // 输出1 callback() // 输出2 arguments[0]() // 输出3 var foo = arguments[0] foo() // 输出4 this.foo2 = arguments[0] this.foo2() } } var arr1 = [1, 2, 3, 4] obj.action(fn, ...arr1) // 引题 var length = 1 function foo() { console.log(this.length) } var arr2 = [foo, 2, 3] arr2[0]() var f1 = arr2[0] f1()