<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Function中bind方法的使用</title>
</head>
<body>
<script>
var cc = '3'
function fn(a,b){
console.log(this.cc);
console.log(arguments);
return a+b;
}
var a = {
cc:'1'
}
var b = fn(1,3) //this.cc 3
console.log(b) //4
var c =fn.bind(a,3);
console.log(c(4)); //this.cc 1 console.log(c(4)) 7
// bind方法类似于call 和aplly,都可以改变上下文 this 的指向
// 不同的是bind方法是返回的一个函数,后面的参数会作为函数的实参传入
// 如 fn.bind(a,3) 中的3 会作为函数 c 的第一个实参传入,c(4)中的4 是函数的第二个参数
// 函数 c 的形参和原函数fn 的形参一致。
</script>
</body>
</html>