最近想学习一下前端的一些基本知识,有几个问题:
1. javascript 定义全局变量和函数有什么缺点,主要是污染命名空间?
2. closure 中引用的变量是不是相当于 C 中的 static 变量?是否在 callback 中声明的匿名函数中使用 closure 可能会造成内存泄漏(每次回调都会有一个新的匿名函数 object ,所以会不断有无法释放的变量产生)?
3. 在 jQuery 这种什么都是回调函数的框架里,如何不使用全局变量地共享一些数据?目前使用的是 $.data 的办法,是否有更好的选择?
4. 比较好的 js 编程范式是不是只用极少的全局类和大量匿名函数?
5. 想要把一些数据在不同的函数中抛来抛去,是不是比较好的做法是定义匿名函数作为 storage 然后用闭包做 getter/setter ?
1. javascript 定义全局变量和函数有什么缺点,主要是污染命名空间?
2. closure 中引用的变量是不是相当于 C 中的 static 变量?是否在 callback 中声明的匿名函数中使用 closure 可能会造成内存泄漏(每次回调都会有一个新的匿名函数 object ,所以会不断有无法释放的变量产生)?
3. 在 jQuery 这种什么都是回调函数的框架里,如何不使用全局变量地共享一些数据?目前使用的是 $.data 的办法,是否有更好的选择?
4. 比较好的 js 编程范式是不是只用极少的全局类和大量匿名函数?
5. 想要把一些数据在不同的函数中抛来抛去,是不是比较好的做法是定义匿名函数作为 storage 然后用闭包做 getter/setter ?