JavaScriptでコマンドを作って実行する
前置き
Firebug1.10にhelpコマンドなるものが入ってました。
consoleでhelpって入力して実行するとFirebugで使える関数等が表示されます。
help();じゃないんですよ。
関数じゃなくてコマンド。
どうやって実現しているんだろうかって気になったのでエスパーして似たようなのを作ってみました。
Firebugのソースは読んでないけど多分おんなじようなことをしているはず。
コード
以下、with文の中でcommandって書いて実行するとcommand is executed.って出力されます。
var obj={}; Object.defineProperty(obj,'command',{ get : function() { console.log('command is executed.'); } }); with (obj) { command // command is executed. }