简单的代码,例如:
function Person(first, last) {
this.firstName = first;
this.lastName = last;
}
Person.prototype.getFullName = function() {
return this.firstName + " " + this.lastName;
};
如果我在文件中有这个并且它被加载到网页(任何浏览器),如果我在控制台中输入:
> p = new Person("Bob", "Smith");
> p.getFullName();
我得到: 未捕获的TypeError:p.getFullName不是函数
如果我将完全相同的行直接复制并粘贴到控制台中,则可以正常工作。它也适用于Node.js的第一次尝试。为什么getFullName的原始定义在从文件加载到浏览器时不显示为函数? (我已经尝试过Chrome和两个版本的Firefox。)
答案 0 :(得分:0)
确保以正确的方式将script.js(例如)文件添加到.html中:
<body>
<script src="script.js"></script>
</body>
顺便说一下,代码在浏览器中使用node.js也很好。
答案 1 :(得分:0)
这很令人尴尬。我在我的文件中发现一个错误,导致js解释器没有显示错误消息。此处提供的代码与问题无关。谢谢大家。