メイン ActionScript 3.0 特設会議室 Function.apply の this について | 投稿するにはまず登録を |
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
takanism | Åê¹ÆNo.34620 投稿日時: 2007-8-10 11:27 |
新米 居住地: 投稿: 3
使用環境:
|
Re: Function.apply の this について ニノミヤさん
ご返信どうもありがとうございました。 version の違いなんですね。すっきりしました。 prototype.js の bind をやりたかったんですが、 以下のように(無意味な code ですが)普通に class 定義した method では難しいですね…。 ---------- Utilities.as package { public class Utilities { public static function bind ($func:Function, $context:Object=null, ... $rest):Function { return function (... $arg):* { return $func.apply($context, $arg.concat($rest)); } } } } ---------- Main.as = DocumentClass (not strict mode) package { import flash.display.*; public class Main extends Sprite { public function Main () { var mc:MovieClip = new MovieClip; Utilities.bind(noaction, mc)(); // this = mc これは OK Utilities.bind(noaction2, mc)(); // this = Main これは NG } public var noaction:Function = function ():void { this.gotoAndStop(1); trace('no problem.'); } public function noaction2 ():void { this.gotoAndStop(1); trace('no problem.'); } } } ---------- うーん、noaction2 が動いて欲しいなぁ(笑) みなさん bind みたいな事をされる時はどうされてるんですかねぇ…。 |
フラット表示 | 前のトピック | 次のトピック |
題名 | 投稿者 | 日時 |
---|---|---|
Function.apply の this について | takanism | 2007-8-9 21:03 |
Re: Function.apply の this について | nioia321 | 2007-8-10 2:11 |
» Re: Function.apply の this について | takanism | 2007-8-10 11:27 |
Re: Function.apply の this について | nioia321 | 2007-8-10 11:53 |
Re: Function.apply の this について | nioia321 | 2007-8-10 12:28 |
Re: Function.apply の this について | takanism | 2007-8-10 17:26 |
投稿するにはまず登録を | |