采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老師,我還沒能理解必包的使用場景!? 關於_list 變數的封裝性,不是寫在函數裡就可以達到嗎,不大懂為什麼要回傳函數
function isFirstLoad(id) { var _list = []; if(_list.indexOf(id)>=0 ) { return false }else{ _list.push(id); return true; } }
你的代码,和视频中的代码,最大的区别在于:_list 这个变量的作用域(即控制权)。视频中的代码,_list 是放在一个工厂函数的闭包中的,而你的 _list 直接暴露在了判断业务逻辑的代码中。
你说实现功能,那肯定能实现。你就是不用函数,直接把函数里面的代码暴露出来也可以实现。但是不同的实现有不同的用意,不同的设计思路。
謝謝老師,我懂了, 閉包會讓 _list 一直保存在記憶體, 我上面的寫法有問題!
非常感谢!
可以试着把你的想法用代码写出来,然后我帮你分析一下。
老師,我上面貼的代碼是沒有回傳函數的版本
登录后可查看更多问答,登录/注册
BAT高级前端工程师亲授,结合真实面试题,提高面试成功几率
951 19
936 17
1.1k 11
1.1k 10
1.0k 10