下面的代碼將記錄a,a.length和b.test。 a和b.test都產量[1,2,3]。編輯 - 我搞砸了。 b.test產量未定義。請參閱下面的雷納迴應。使用Javascript獲取分配給擴展函數原型的數組的長度
則爲a.length產量3.
b.test.length失敗「的未定義無法讀取屬性‘長’」
爲什麼會出現這樣的情況時,一個和b.test相等?
var a = [1,2,3];
var b = function(){};
b.prototype.test=[1,2,3];
console.log(a);
console.log(a.length);
console.log(b.test);
console.log(b.test.length);
'console.log(b.test);'打印'undefined',而不是'[1,2,3]'。 –
謝謝,Matt。我也看到了現在,我一定忽略了一些東西 – temporarylight
請參閱** [JavaScript是如何做的。原型工作?](http://stackoverflow.com/a/572996/500725)**答案 –