我一直在嘗試使用object.defineproperty編寫getter和setter,但是不能。我一直在嘗試這個例子,但由於沒有定義firstName屬性而引發錯誤。有人可以幫我這個如何在javascript中使用object.define屬性來定義getter和setter
function person(fName, lName) {
Object.defineProperty(this, 'firstName', {
get:function() { return firstName; },
set:function(newValue){firstName=newValue;}
});
}
var p1=person("xyz","abc");
console.log(p1.firstName);
感謝
在哪裏使用'fName'和'lName'? Uhuh,你沒有。你怎麼期望傳遞一個價值,而不是通過它? ;-) –
我的想法是在person對象中創建一個firstName屬性,它應該有fName值 – Geeky
找不到我怎麼做的方法 – Geeky