function person(f, l) {
this.firstName = f;
this.lastName = l;
this.changeName = function (str) {
this.lastName = str; }
this.getInitials = function() {
{return f[0] + l[0]} }}
var foo = new person("Joe","Smith");
foo.changeName("Brown");
alert(foo.firstName + " " + foo.lastName);
alert(foo.getInitials())
最初alert()
私は、すなわち「ジョー・ブラウン」、それを期待するもの与えます。しかし、2番目のものは「JS」です。
ここでは何が起こっていますか? foo.lastName
の場合は、「ブラウン」はJS
ではなくJB
と表示すべきですか?
'getInitials'はゲッターです。それは何も変わらない。 – Cerbrus
申し訳ございませんが、元のコメントは不明でした。私は彼が更新された値ではなく元の値 'f'と 'l'(changeNameによって変更されない)を取得していると言っていました。 – David