Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.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,当我尝试使用Player1.Logic()调用函数时或逻辑()我得到一个错误: var Player1 = new character; 我应该以不同的方式声明函数还是以不同的方式调用它? 除此之外,其他一切似乎都很好。到目前为止,我唯一的幸运是用事件处理程序声明函数。这是因为逻辑函数与字符函数没有任何关系 而逻辑函数在该生命的局部范围内 以下是您可以做的事情: 您可以这样使用它: var Character = (function(){ function Character ()

当我尝试使用
Player1.Logic()调用函数时
逻辑()我得到一个错误:

var Player1 = new character;
我应该以不同的方式声明函数还是以不同的方式调用它?
除此之外,其他一切似乎都很好。到目前为止,我唯一的幸运是用事件处理程序声明函数。

这是因为
逻辑
函数与
字符
函数没有任何关系

逻辑
函数在该生命的局部范围内


以下是您可以做的事情:

您可以这样使用它:

var Character = (function(){

    function Character (){}

    Character.prototype.logic = function(){
        console.log("new character loaded!");
    }

    return Character

})();

侧节点:大写方法通常用于类,小写方法通常用于常规函数和类方法。

这是因为
逻辑
函数与
字符
函数没有任何关系

逻辑
函数在该生命的局部范围内


以下是您可以做的事情:

您可以这样使用它:

var Character = (function(){

    function Character (){}

    Character.prototype.logic = function(){
        console.log("new character loaded!");
    }

    return Character

})();

边节点:大写方法通常用于类,小写方法通常用于常规函数和类方法。

您在character()函数之外声明了Logic()函数

试试这个:

var myCharacter = new Character();
myCharacter.logic();

您正在character()函数之外声明Logic()函数

试试这个:

var myCharacter = new Character();
myCharacter.logic();

HTML5在哪里?我看到JavaScript了。@epascarello就在标记中,你没看到吗?:-p正在处理一些
Logic.prototype.character
的东西。@Mindbreaker反过来说。哦,对不起:
character.prototype.Logic
HTML5在哪里?我看到JavaScript了。@epascarello就在标记中,你没看到吗?:-p正在处理一些
Logic.prototype.character
的东西。@Mindbreaker反过来说。哦,对不起:
character.prototype.Logic
*iLife(立即调用的函数表达式)没有不尊重的意思,只是为任何可能被难倒的读者澄清一下。老实说,这是我第一次在网上看到任何与维基相关的东西,所以我有点迷路了。@AndréDion任何你可以编辑的答案。。。这就是堆栈交换的工作原理:-)更新了@WesleyMurch:-D*IIFE(立即调用的函数表达式)没有不尊重的意思,只是为任何可能遇到困难的读者澄清一下。老实说,这是我第一次在网上看到任何与维基相关的东西,所以我有点迷路了。@AndréDion任何你可以编辑的答案。。。这就是堆栈交换的工作原理:-)更新@WesleyMurch:-D
(function (window) {

    function character() {
        this.Logic=function() {
            console.log("new character loaded!");
        }
    }

    window.character = character;
}(window));
var Player = new character();
character.Logic();