当我将参数设置为对象时,JavaScript返回TypeError
JavaScript returns TypeError when I set the arguments as objects
我想在JavaScript中测试继承。我制作了一个示例脚本,但它不起作用。程序返回TypeError。
var Mammal = function(spec) {
this.name = spec.name;
};
Mammal.prototype.get_name = function() {
return this.name;
};
var Cat = function(spec) {
this.name = spec.name;
};
Cat.prototype = new Mammal();
var cat = new Cat({name: 'Mike'});
console.log(cat.get_name());
如果我将Mammal和Animal函数的参数设置为非对象,则程序运行良好。
错误来自以下行:
Cat.prototype = new Mammal();
Mammal
构造函数需要一个具有name
属性的对象。你可以做:
Cat.prototype = new Mammal({name: null});
或者更好:
Cat.prototype = Object.create(Mammal.prototype);
相关文章:
- Javascript返回值只在循环中返回一次
- ascii输入键通过firefox中的javascript返回0
- 从函数JavaScript返回不可变数组/对象
- 使用在函数外部声明的变量的 Javascript 返回值 + undefined
- 如何在Android中将Javascript返回值转换为String
- Javascript返回错误的Date值(NodeJS)
- JavaScript:返回对象的函数
- 使用javascript返回
- JavaScript返回奇数
- JavaScript:返回NaN(第2部分)
- 是我的第三方JavaScript返回html还是只是一个空对象
- 如何从javascript返回输出json
- Javascript:返回对象
- 当我将参数设置为对象时,JavaScript返回TypeError
- 获取页面宽度Javascript-返回PHP变量
- 使用纯JavaScript返回并嵌入图像,如php
- 为什么 javascript 返回对象位置 true 或 false
- JavaScript - 返回承诺和/或调用回调
- 将 javascript 返回值插入 html
- Javascript 返回 OR(||) 操作的字符串