1. 程式人生 > >數據屬性和訪問器屬性

數據屬性和訪問器屬性

但是 等號 處理 var round meta bsp 模板 alert

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>數據屬性和訪問器屬性</title>
<script src="js/jquery.min.js"></script>
<script>
模板

var obj ={

get 空格 屬性名(){

return 屬性值;
},
set 空格 屬性名(value){

//需要接收到的value作處理
}
}


實例:

//訪問器屬性:

// 看起來像函數但是調用起來像是屬性,
// 並未真正存儲數據,只是用來操作數據
var circle={
r:10, //數據屬性(半徑)
get size(){//size屬性的getter訪問器(只有get訪問器屬性時是只讀的,即只能調用獲取值但是不能設置新值)
return Math.PI*this.r*this.r;//知道半徑求面積
},
set size(value){//size屬性的setter訪問器,可讀也可以寫
this.r=Math.sqrt(value/Math.PI) ;//知道面積求半徑(平方根)

}
};
alert(circle.size);//調用屬性的getter訪問器
circle.size=31400;//調用屬性的setter訪問器
alert(circle.r);

註意:訪問器屬性的本質是兩個函數,若想要讀取訪問器屬性的值
,會自動調用get訪問器;若想為訪問器屬性賦值,會自動調用set
訪問器,並把等號右邊的值傳遞給set訪問器的形參

</script>

</head>
<body></body>
</html>

數據屬性和訪問器屬性