js中得到json值

{"root":[{"id":1,"menu":"综合统计","fmenu":"首页"},{"id":2,"menu":"状态","fmenu":"首页"},{"id":3,"menu":"设备状态","fmenu":"实时监控"}]
这是后台的数据
我需要在页面加载的时候就得到:
var m="aaa";
Ext.Ajax.request({
url:'showMenus.do',
method:'post',
success:function(response){
window.m= Ext.decode(response.responseText);
}
});
alert(window.m);
如何把response.responseText的值赋给m;
注:是下来的alert能显示出来!
[b]问题补充:[/b]

mfkdzhou 你说的这种方法我也知道,但他不是同步的,下面的alert输出的还是‘aaa’;
不好意思,等待精确答案
[b]问题补充:[/b]
蔡华江,关于你的回答,也没有解决我的问题
我是在Ajax读取完数据后在外面可以调用的!
而不是在success里面alert的。
不好意思!

首先,你自己也是知道的,这是个因为数据异步导致的。因此,解决方案就是等异步调用完成后在回调中继续进行其它的操作。
无论怎么写,alert(window.m); 都是在success中调用实现的,就是这个意思

可以试试这个:
var temp = eval("res="+response.responseText);
window.m = temp;

var m="aaa";
Ext.Ajax.request({
url:'showMenus.do',
method:'post',
success:function(response){
window.m= Ext.decode(response.responseText);
alert(window.m);
}
});