5-4编程练习
来源:5-4 编程练习
慕数据7542861
2018-10-26 18:25:24
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>封装和闭包</title>
</head>
<body>
<script>
function Student(){
var privateStore = {};
function _get(){
return privateStore;
}
function _set(stu){
privateStore[stu.name] = stu;
}
this.get = function(){
return _get;
};
this.set = function(){
return _set;
};
}
var student = new Student();
student.set()({name:'poorpenguin',age: 18, sex: '男'});
console.log(student.get()());
student.set()({name:'mengfeng',age: 18, sex: '男'});
console.log(student.get()());
</script>
</body>
</html>老师我这么做没问题吧,这道题的思想是不是:变量privateStore ,函数_set和_get这三个都是私有的,外部无法直接访问的,只能通过对象暴露出的方法get和set(不是函数)来操作私有的_set和_get去操作privatesStore
1回答
变量privateStore ,函数_set和_get这三个都是私有的,外部无法直接访问的,只能通过对象暴露出的方法get和set(不是函数)来操作私有的_set和_get去操作privatesStore,这个理解是正确的。但是建议在_set方法中可以使用for循环来完成赋值,参考:

自己可以测试一下,祝学习愉快!
相似问题