下面利用闭包特性来封装一个对象student,运用对象student存储一个学生的信息,信息包括姓名,性别和年龄,这些信息不可被外部直接访问,只能通过对象的方法获取 。
1创建一个构造函数student,student中使用字面式定义一个空对象privateStore,用来存放私有的数据。
2. student中定义一个函数_set , 用来设置学生的信息 (姓名,性别和年龄) 。
3. student中定义一个函数_get , 用来获取信息 。
4. student中定义一个方法get ,方法中返回函数_get。
5. student中定义一个方法set, 方法中返回函数_set。
6.实例化对象student,并调用set方法为student添加信息 。如 ( "小明", "男", 23 )
7.调用get方法输出student的所有信息。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>5-4</title>
</head>
<body>
<script>
function student(){
var privateStore = new Object();
var _set = function(name,sex,age){
privateStore.name = name;
privateStore.sex = sex;
privateStore.age = age;
}
var _get = function(){return privateStore;}
this.get = function(){return _get;}
this.set = function(){return _set;}
}
var stu = new student();
var Set = stu.set();
var Get = stu.get();
Set("小明", "男", 23);
console.log(Get());
</script>
</body>
</html>