归还这个|在javaScript中返回false

时间:2015-10-24 02:20:49

标签: javascript return

这是“return this”和“return false”之间的区别

我有这个代码,我正在努力理解它

var MicuentaView = function (globalService) {

    var menu;
    var Estatus;

    this.initialize = function() {
        this.$el = $('<div/>');
        this.$el.on('click', '.VeEstatus', this.GoEstatus);
        menu = new MenuView();
    };

     this.render = function(dataToRender) {
        this.$el.html(this.template(dataToRender));
        $('.MENU', this.$el).html(menu.$el);
        console.log('rendereado');
        return this;
    };

    /* events functions */
    this.GoEstatus = function(event){
        event.preventDefault();
        Estatus = new EstatusView();
        $('body', this.$el).html(Estatus.$el);
        return false;   
    };
    this.initialize();
};

非常感谢

2 个答案:

答案 0 :(得分:1)

您很可能正在调用MicuentaView来创建对象,如下所示:

obj = new MicuentaView(something);

“this”将是对实例化的obj的引用。所以当你在obj.render()中调用方法“render”时,obj.render()将返回对obj的引用。

所以:

result = obj.render();  // assigns the reference of obj to result.

当您想要将方法(函数)链接在一起时,这很有用,例如

obj.render().toString();

obj.render()返回由渲染器修改的obj,然后toString()可以在生成的obj上执行它的操作。

“返回false;”只返回布尔值false。

将引用想象成其他语言中的指针(内存地址/对象的位置)。

答案 1 :(得分:0)

那些是完全不同的东西。 points是一个布尔值,false是调用该函数的对象的值(是的,这是过于简单化的。)