JavaScript:无法返回自定义对象信息

时间:2011-12-05 22:40:04

标签: javascript object

我用对象方法创建了一些新对象,但是我无法返回信息。 我打算让allPages成为一个二维数组:

        var allPages = [[]];

        function textbox(type)
        {
            this.type=type;
            this.getInfo = function () { return ( this.type ); };
        }

        function addTextbox(dropdown)
        {

            var myindex  = dropdown.selectedIndex;
            var SelValue = dropdown.options[myindex].value;

            if(SelValue == "String")
            {

                    var tb = new textbox("string");
                    allPages[allPages.length-1].push(tb);

                    var string = "";
                    for (i = 0;i < allPages.length;i++)
                    {
                        for(j = 0;j < allPages[i].length;j++)
                        {
                            string = string + allPages[i][j].getInfo;
                        }
                    }
                    <!-- Problem here: prints "function () { return this.type; }"-->
                    document.write(string);
                }

            }
}

2 个答案:

答案 0 :(得分:2)

上面3行你说的存在问题,应该是:

string = string + allPages[i][j].getInfo(); // mind the () at the end.

答案 1 :(得分:2)

您没有调用该函数,您正在引用它

allPages[i][j].getInfo;

应该是

allPages[i][j].getInfo();