angular.bind方法
2017-07-25 11:19 蝶梦中 阅读(216) 评论(0) 收藏 举报返回一个绑定到self调用fn函数的方法(self在fn函数中是this)。你可以在该函数中使用可选的args参数。这个功能可认为是一个函数绑定,跟函数柯里化有区别。
使用方法:
angular.bind(self, fn, args);
参数
| 参数名称 | 参数类型 | 描述 |
| self | Object | fn的上下文对象,使用this调用 |
| fn | Function | 被绑定的函数 |
| args | * | 传入fn中的参数(可选) |
返回值:
Function() :返回动态绑定之后的函数
实例
<script src="../angular.js"></script>
<script type="text/javascript">
var self = { name: 'boyi' };
//示例1--带参数
var f = angular.bind(self, //绑定对象,作为函数的上下文
//被绑定的函数
function (age) {
alert(this.name + ' is ' + age + ' !');
},
//绑定的参数,可省略
'15'
);
f();//调用绑定之后的function
//示例2--不带参数
var m = angular.bind(self, //绑定对象,作为函数的上下文
//被绑定的函数
function (age) {
alert(this.name + ' is ' + age + ' !');
}
//省略参数
);
m(3);//调用传参的函数
</script>
tips:函数柯里化的基本方法和函数绑定是一样的,使用一个闭包返回一个函数。两者的区别在于,当函数被调用时,返回的函数还需要设置一些传入的参数。curry()仅仅接受一个要包裹的函数作为参数,而bind()同时接受函数和一个object对象。
浙公网安备 33010602011771号