我正在尝试使用三个方法human
,walk
和eat
创建一个名为talk
的JavaScript对象,我想这样调用它(任何方法都不应输出任何值):human.talk('hello').walk('home').eat('pizza')
。
我有以下代码:
var human = {
talk : function talk(t){
},
walk : function walk(w){
},
eat : function eat(e){
}
};
console.log(human.talk('hello').walk('home').eat('pizza'));
但我收到
Uncaught TypeError: Cannot call method 'walk' of undefined
为什么??
最佳答案
如果您希望能够链接功能,则每个功能都必须return this
。因为函数talk
返回undefined
并且实际上试图调用undefined.walk('home')
,所以您收到错误消息。
关于javascript - 使用3种方法创建JavaScript对象将引发对象没有方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19237129/