javascript - OOP JavaScript - 此引用

标签 javascript oop this

出于某种奇怪的原因,当调用将 this 分配给 thisObj 的函数时,我收到错误:

TypeError: thisObj is undefined

这是我得到的:

function templateObject() 
{
    "use strict";
    var thisObj = this;

    function _loadBackgroundImages() 
    {
        "use strict";
        // something happens here
    }


    thisObj.initialise = function() 
    {
        "use strict";
        _loadBackgroundImages();
    };
}

然后使用实例化调用该函数,如下所示:

var templateObj = templateObject();
templateObj.initialise();

无法弄清楚为什么会出现错误 - 有什么想法吗?

最佳答案

使用new :

var templateObj = new templateObject();

使用 new 调用函数会将新创建的空对象作为 this 传递给函数,然后将其返回给 templateObj

关于javascript - OOP JavaScript - 此引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17928103/

相关文章:

javascript - 如何在全日历中更改事件高度

java - 在 setter 方法中做其他事情是否被认为有副作用?

java - 使用java和面向对象创建联系人列表

Jquery 获取 this 或 $(this) 内的所有...

jquery - 父对象的链接点击功能重定向到href

javascript - 单击单独的 Div 时显示隐藏的 Iframe

javascript - 单击外部元素时,Google map api v3 显示信息窗口

javascript - 如何暂停 javascript 直到某件事完成?

javascript - A* 算法返回启发式值 (JavaScript)

c# - `class` 关键字和用户定义的数据类型