夠簡單的代碼,如:的JavaScript函數原型沒有定義
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();
我得到: 遺漏的類型錯誤:p.getFullName不是一個函數
如果我複製完全相同的線路上面直接粘貼到控制檯,它的工作原理。它也適用於Node.js中的第一次嘗試。爲什麼getFullName的原始定義在從文件加載到瀏覽器中時沒有顯示爲函數? (我試過Chrome和Firefox的兩個版本。)
你有沒有嘗試在另一個函數中包裝你的代碼? – Blacksun
對我來說,它也可以從命令行運行。你的控制檯窗口中選擇了正確的框架嗎? – Ivar