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回答

好帮手慕星星

2018-10-26

变量privateStore ,函数_set和_get这三个都是私有的,外部无法直接访问的,只能通过对象暴露出的方法get和set(不是函数)来操作私有的_set和_get去操作privatesStore,这个理解是正确的。但是建议在_set方法中可以使用for循环来完成赋值,参考:

http://img.mukewang.com/climg/5bd2f10100012bbd05060183.jpg

自己可以测试一下,祝学习愉快!

0

0 学习 · 4826 问题

查看课程