比如: (一)
var db = openDatabase('db', '1.0', 'description', 1024);
对比:(二)
window.db = openDatabase('db', '1.0', 'description', 1024);
示列(二)这种把 db 用 window 声明成全局变量是否影响性能呢?
1
secondwtq 2015-04-18 02:00:49 +08:00 1
Google 到了以下结果:
http://stackoverflow.com/questions/11283463/global-variables-javascript-which-is-faster-varname-or-window-varname PS:JavaScript 新手,并不太清楚以上内容和本主题是否有关系,因此仅供参考。不过还是建议楼主 Profile 一下。 |
2
FrankFang128 2015-04-18 02:10:20 +08:00 via Android 1
这点性能算个蛋,没找到瓶颈之前不要做性能优化。
|
3
whatisnew OP |
4
NemoAlex 2015-04-18 04:24:09 +08:00
1. 如果你没有在一个闭包的环境下运行上面的代码,两种方式得到的结果其实是一样的。
2. 全局变量的问题不在于性能,而是让作用域变得不可控。无论是在浏览器上还是在后端,未来可能会在同一环境下运行无数的代码,但是全局变量就只有一套,所以省着点,小心一点用。 |
5
Phariel 2015-04-18 09:33:17 +08:00 via Android
不要试图污染window 除非你是一个框架级的东西
|
6
iNaru 2015-04-18 13:11:25 +08:00
全局变量不能被垃圾回收的机制回收。
|
7
xavierchow 2015-04-18 16:24:38 +08:00
@NemoAlex 赞同第2点。
|
8
whatisnew OP |