ホームページ > ウェブフロントエンド > jsチュートリアル > Function.prototype.bind の使用例_JavaScript スキル

Function.prototype.bind の使用例_JavaScript スキル

WBOY
リリース: 2016-05-16 17:22:36
オリジナル
998 人が閲覧しました
コードをコピー コードは次のとおりです。

//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 = [],
for ( i = 1; i for ( i = 0; i return this.apply(o, args);
}
}
})();


使用例:
1.呼び出し例


/*example 1*/
function f1(y , z){ return this.x y z;}
//Call 1
var g1 = f1.bind({x:1}, 2); //this.x = 1; y = 2;
console.loog( g1(3) ); //this.x y 3 = 6;
//Call 2
var g2 = f1.bind({x:1}); //this.x = 1;
console.log( g2(2,3) ); //this.x 2 3 = 6

/*例 2*/
var f2( x, y){ return x y; }
//Call
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; //この時点では eleText を指します
}.bind(eleText, "#cd0000"); >
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート