码迷,mamicode.com
首页 > 编程语言 > 详细

夺命雷公狗---javascript NO:31 私有属性

时间:2015-12-09 11:31:49      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:

1、什么是私有属性

在JavaScript代码中,是没有public/protected/private等定义属性的关键词,但是我们可以通过模拟的方式来实现这个过程。

在JavaScript只有两种属性:

一种共有属性

一种私有属性

 

2、定义私有属性

在构造器内部,通过this定义的属性就是公有属性

在构造器内部,通过var定义的属性就是私有属性

 

<!DOCTYPE html>
<html>
<head>
<meta charset=’utf-8′>
<title></title>
</head>
<body>
<script>
function ren(){
this.name =’xiaohong; //使用this定义公有属性
var age =’50′;  //使用var定义私有属性
}
//实例化shuo对象
var shuo = new ren();
alert(shuo.name); //xiaohong
alert(shuo.age);  //undefined
</script>
</body>
</html>

 

 

 

3、私有属性的赋值与访问

在有些情况下,我们可能在运行需要对私有属性进行赋值与访问操作,那么如何实现呢?

 

<!DOCTYPE html>
<html>
<head>
<meta charset=’utf-8′>
<title></title>
</head>
<body>
<script>
function ren(){
this.name =’xiaohong; //使用this定义公有属性
var age;  //使用var定义私有属性
//定义一个公有方法实现对age属性的访问
this.geterzi = function(){
alert(age);
}
//定义一个公有方法对age属性复制操作
this.seterzi = function(jiang){
age = jiang;
}
}
//实例化shuo对象
var shuo = new ren();
alert(shuo.name); //xiaohong
alert(shuo.age);  //undefined
shuo.seterzi(’50’);
shuo.geterzi();
</script>
</body>
</html>

 

如果一个私有属性只有get方法,那么其就是可读属性,如果一个私有属性只有一个set方法,那么其就是可写属性,两者同时具有就是可读可写属性。

夺命雷公狗---javascript NO:31 私有属性

标签:

原文地址:http://www.cnblogs.com/leigood/p/5032032.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!