set $age之后,運(yùn)行man.age值為undefined
var man = {
name:'kkk',
weibo:'@Bosn',
$age:null,
get age(){
if( this.$age == undefined ){
return new Date().getFullYear() - 1988;
}
},
set age(val){
val = +val;
if( !isNaN(val) && ?val > 0 && val < 150){
this.$age = +val;
return this.$age;
}else{
console.log('Age can\'t be set to ' + val );
}
}
}
console.log( ' man.age = ?'+ man.age); // 20?
man.$age = 100;
console.log( ' man.age2 = ?'+ man.age); // undefined ?這個(gè)我運(yùn)行出來是undefined,老師的為啥是 100 ,
2017-06-23
這一段
之后你沒有寫else的語(yǔ)句。
原因:在你設(shè)置了$age之后if判斷時(shí)顯示false,不執(zhí)行上一段的命令,但也沒有else的命令可以執(zhí)行,所以默認(rèn)會(huì)返回undefined。