chrome.runtime.onMessage.addListener( function(request, sender, callback) { // 1 chrome.tabs.getSelected(function(tab) { // 2 callback(tab.title); }); // 3 } ); (chrome.tabs.getSelectedは現在開いているタブを取得する関数です) 上のサンプルは現在のタブのタイトルをアラートダイアログで表示するだけのプログラムですが、実際に実行するとアラートにはundefinedと表示されてしまいます。 解説 まず、大前提としてjavascriptのなんか引数にfunction渡したりする系のものは非同期なんですね。 その辺を理解していなかったのでなかなかわかりませんでした。 https://developer.chrome.c