Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有人告诉我这个代码有什么问题吗_Javascript - Fatal编程技术网

Javascript 有人告诉我这个代码有什么问题吗

Javascript 有人告诉我这个代码有什么问题吗,javascript,Javascript,我想做的是,如果我调用ge('id').getIn()将导致该元素的innerHTML,那么您将在该构造函数中返回一个DOM节点。我猜您使用它作为构造函数,因此覆盖了它实际应该返回的对象 跳过这一步 function ge(id){ this.id=id; this.d=document; this.w=window; return document.getElementById(id); } ge.prototype={ set_in:function(

我想做的是,如果我调用ge('id').getIn()将导致该元素的innerHTML

,那么您将在该构造函数中返回一个
DOM节点
。我猜您使用它作为构造函数,因此覆盖了它实际应该返回的
对象

跳过这一步

function ge(id){
    this.id=id;
    this.d=document;
    this.w=window;
    return document.getElementById(id);
}
ge.prototype={
    set_in:function(value){
        this.innerHTML=value;
    },
    getIn:function(){
        return document.getElementById(this.id).innerHTML;
    },
    foc:function(){
        document.getElementById(this.id).focus();
    }
}
你很好。您可以将该节点引用存储在一些
this.myRef
值中


删除该
return
语句后,需要创建一个实例。像

return document.getElementById(id);
然后你终于可以打电话了

var myGE = new ge('id');

您将在该构造函数中返回一个
DOM节点
。我猜您使用它作为构造函数,因此覆盖了它实际应该返回的
对象

跳过这一步

function ge(id){
    this.id=id;
    this.d=document;
    this.w=window;
    return document.getElementById(id);
}
ge.prototype={
    set_in:function(value){
        this.innerHTML=value;
    },
    getIn:function(){
        return document.getElementById(this.id).innerHTML;
    },
    foc:function(){
        document.getElementById(this.id).focus();
    }
}
你很好。您可以将该节点引用存储在一些
this.myRef
值中


删除该
return
语句后,需要创建一个实例。像

return document.getElementById(id);
然后你终于可以打电话了

var myGE = new ge('id');

您需要调用
newge(“header”).getIn()而不仅仅是
ge(“header”).getIn()-或创建另一个函数,返回
ge
-的新实例,例如:

myGE.getin();

您需要调用
newge(“header”).getIn()而不仅仅是
ge(“header”).getIn()-或创建另一个函数,返回
ge
-的新实例,例如:

myGE.getin();


您会得到什么结果?此错误:无法调用null的方法“getIn”为什么不设置一个?您是否尝试调试此方法?@bhaviktatel-its,因为您尚未实例化ge对象。看到我的答案了。你得到了什么?这个错误:无法调用null的“getIn”方法为什么不设置一个?你试过调试这个吗?@bhaviktatel-因为你没有实例化ge对象。看我的答案。只要他从构造函数中返回一个对象,这就永远不会起作用。这绝对起作用。请看这篇文章:-如果不先实例化对象,您完全无法调用方法-这就是问题代码的问题所在。无法读取的属性“innerHTML”null@techfoobar:开玩笑?你修改了密码。这将是他的代码:。他所需要做的就是编辑
return
语句。无需返回此
偶数。然后他可以直接调用
newge('id')否。如果您密切注意到,我的初始答案会对返回的stmt进行注释(显然需要)。另外,到目前为止,我的答案中没有任何编辑。只要他从构造函数中返回一个对象,这就永远不会起作用。这绝对起作用。请看这篇文章:-如果不先实例化对象,您完全无法调用方法-这就是问题代码的问题所在。无法读取的属性“innerHTML”null@techfoobar:开玩笑?你修改了密码。这将是他的代码:。他所需要做的就是编辑
return
语句。无需返回此
偶数。然后他可以直接调用
newge('id')否。如果您密切注意到,我的初始答案会对返回的stmt进行注释(显然需要)。另外,到目前为止,我的答案中没有任何修改。我做了这些,但仍然没有working@BhavikPatel:请查看更新的答案。但我不想每次都创建对象。您必须创建对象。如果不先实例化ge内部的函数,您将无法调用它。也许你最多可以将实例化隐藏在另一个函数中。我这样做了,但仍然没有working@BhavikPatel:请查看更新的答案。但我不想每次都创建对象。您必须创建对象。如果不先实例化ge内部的函数,您将无法调用它。也许您最多可以将实例化隐藏在另一个函数中。