js 之 Object.getOwnPropertyDescriptor()

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			//定义多个属性
			//Object.defineProperties
			var book = {}
			Object.defineProperties(book , {
				_year: {
					value: 2004
				},
				edition: {
					value: 1
				},
				year: {
					get: function(){
						return this._year;
					},
					set: function(newValue){
						if(newValue > 2004){
							this._year = newValue;
							this.edition += newValue - 2004;
						}
					}
				}
			});
			
			var descriptor = Object.getOwnPropertyDescriptor(book , "_year");
			alert(descriptor.value);	//2004
			alert(descriptor.configurable);	//false
			alert(typeof descriptor.get);	//undefined
			
			var descriptor = Object.getOwnPropertyDescriptor(book , "year");
			alert(descriptor.value);	//undefined
			alert(descriptor.enumerable);	//false
			alert(typeof descriptor.get);	//function
		</script>
	</body>
</html>

  

posted on 2016-04-21 16:49  宝清老窖  阅读(355)  评论(0编辑  收藏  举报