Pot.js で利用可能。 PotLite.js では利用できません。
this と引数を束縛した関数を返します。
this を引数と共に束縛した新しい関数を作成し返します。
引数 func は対象の関数を指定します。
引数 self は対象となるオブジェクト (this) を指定します。
self 以降に任意の数の引数を指定すると、束縛する対象となります。
bind は、Function.prototype.bind (JavaScript 1.8.5 以上で有効) と似ています。
Pot.globalize() が適応されている場合、Pot.bind() が bind() で実行できます。
this と引数を束縛した関数が返ります。
var Hoge = function() { this.msg = 'Hello Hoge!'; }; Hoge.prototype.sayHoge = function() { Pot.debug(this.msg); }; var hoge = new Hoge(); // direct setTimeout(hoge.sayHoge, 1000); // undefined // bind setTimeout(Pot.bind(hoge.sayHoge, hoge), 1000); // Hello Hoge! // with arguments Hoge.prototype.sayHogeMsg = function(msg) { Pot.debug(this.msg + msg); }; // direct setTimeout(hoge.sayHogeMsg, 1000); // NaN // bind setTimeout(Pot.bind(hoge.sayHogeMsg, hoge, 'Hi!'), 1000); // Hello Hoge!Hi!