var t;
    (function() {
        t = {"id":"2"};
        return t;
    })();
    alert(t.id);

解决方案 »

  1.   

    首先最外层是一个匿名自执行函数。里面使用对象方式定义了t这个对象,里面有一个属性id,值为2;
    t.id就是2
      

  2.   

    (function() {
      t = {"id":"2"};
      return t;
      })();意思是直接运行这个函数 相当于
    function A() {
      t = {"id":"2"};
      return t;
     }
    A()
      

  3.   

    这样的写法最头上的t都不用定义,()里的变量在执行完后就被系统回收,但是直接写成t = {"id":"2"};系统自动创建全局t对象,return 都不是必须的,事实上整个代码和下面这句等价:
    var t = {"id":"2"};
      

  4.   

    说的详细点就是
    (表达式)()第一个 (表达式)     这个的 '()' 是一个求值运算 根据你写的 这里求出一个 functionn 对象第2个 ()  则根据语法规则  是对 前面求出的 function对象 进行调用操作
      

  5.   

    http://hi.baidu.com/%EE%D1%D7%D300544/blog/item/75d2ca8d722cc307b21bba20.html
      

  6.   

    var t=   {"id":"2"};
    alert(t.id);这样多好!匿名函数,主要是可以避免命名冲突!(function(){
    var t=   {"id":"2"};
    alert(t.id);
    })();