gpt4 book ai didi

javascript - 在控制台中调用原型(prototype)方法时,Chrome Web 检查器显示异常符号

转载 作者:行者123 更新时间:2023-11-28 01:32:12 25 4
gpt4 key购买 nike

所以我有一个名为“createGameObjectConstructor”的函数,它接受一个函数和一个原型(prototype),将原型(prototype)和一个方法添加到函数中,然后返回该函数。它可以像这样使用

Monster = createGameObjectConstructor(function () {
this.evilness = 9001;

}, {
eatHuman:function () {
console.log('human consumed');
}, type:'scary'
});

“createGameObjectConstructor”看起来像这样

createGameObjectConstructor = (function () {

var recent = function () { //every actual object constructor will share this method
return (instance.length> 0) ? instance[instance.length - 1] :null;
};


return function (constructor, prototype) { //createGameObjectConstructor

var instanceArray = new Array();

constructor.prototype = prototype;

return function (){ //actual object's constructor
var instance = new constructor();
instance.constructor = constructor;
instanceArray.push();
return instance;
};

f.recent = recent;

return f;

}

}());

但是当我在 Chrome 的控制台中调用 Monster().eatHuman(); 时,它返回未定义的函数,但旁边有一个奇怪的箭头,这是因为我奇怪的编码不知何故导致它过于评估代码什么的?

The Arrow

这是一个 fiddle http://jsfiddle.net/UZmL9/

最佳答案

这仅意味着函数的返回值未定义

所有 JavaScript 函数 return undefined by default如果没有找到明确的 return 语句。

function foo(){
console.log("Hi");
}
foo(); // you will get the same 'undefined'

但是

function foo(){
console.log("Hi");
return 5;
}
foo(); // you will get 5 with that arrow

关于javascript - 在控制台中调用原型(prototype)方法时,Chrome Web 检查器显示异常符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21984860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com