手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >Function.prototype.bind用法示例
Function.prototype.bind用法示例
摘要:复制代码代码如下://ECMAScript5Function.prototype.bind函数兼容处理(function(){if(!Fun...

复制代码 代码如下:

//ECMAScript 5 Function.prototype.bind函数兼容处理

(function(){

if ( !Function.prototype.bind ) { //function(){}.bind

Function.prototype.bind = function ( o, /*参数列表*/ ) {

var self = this, boundArgs = Array.prototype.slice.call(arguments, 0);

return function(){

var args = [], i;

for ( i = 1; i < boundArgs.length; i++ ) args.push(boundArgs[i]);

for ( i = 0; i < arguments.length; i++ ) args.push(arguments[i]);

return this.apply(o, args);

}

}

}

})();

用法示例:

1、简单调用示例

复制代码 代码如下:

/*example 1*/

function f1(y, z){ return this.x + y + z;}

//调用 1

var g1 = f1.bind({x:1}, 2); //this.x = 1; y = 2;

console.loog( g1(3) ); //this.x + y + 3 = 6;

//调用 2

var g2 = f1.bind({x:1}); //this.x = 1;

console.log( g2(2,3) ); //this.x + 2 + 3 = 6

/*example 2*/

var f2(x, y){ return x + y; }

//调用

var g3 = f2.bind(null, 1); //x = 1

console.log( g3(2) ); //x + 2 = 3

2、DOM调用示例

复制代码 代码如下:

var eleBtn = document.getElementById("button")

, eleText = document.getElementById("text");

eleBtn.onclick = function(color) {

color = color || "#003399";

this.style.color = color; //此时的this指向eleText

}.bind(eleText, "#cd0000");

【Function.prototype.bind用法示例】相关文章:

浅谈javascript的call()、apply()、bind()的用法

JQuery中DOM事件合成用法实例分析

Jquery中基本选择器用法实例详解

Javascript中的Prototype到底是什么

破解Session cookie的方法

Jquery使用css方法改变样式实例

JQuery中层次选择器用法实例详解

javaScript中with函数用法实例分析

在ASP.NET MVC项目中使用RequireJS库的用法示例

讲解JavaScript中for...in语句的使用方法

精品推荐
分类导航