var a = {
            b: 1,
            c: {
                d: 2,
                e: function (event) {
                    //此位置可以 通过 this访问 d
                    this.d;
                    //问 怎么取到 b
                    //除去 a.b 其他方法 
                    a.b;
                }
            }
        }

解决方案 »

  1.   

    在a里挑个方法 getB(){return a.b;}
      

  2.   

    要this 能访问整个对象的作用域,创建的对象的 不能用{}方式创建对象,这个的constructor是object,是访问不到this中的属性的,要用function 在对象中,自定义构造函数。
    比如,你的写法可以改成这样:        var a = {
                b: 1,
                c: function () {
                    this.d = 2,
                    this.e = function (event) {
                        //此位置可以 通过 this访问 d
                        this.d;
                        //问 怎么取到 b
                        //除去 a.b 其他方法 
                        alert(this.b);
                    }
                    return this;
                }
            }
            //调用
            a.c().e();