使用document.head和使用有document.getElementsByTagName("head")[0]什么区别?我跑的测试表明它们都需要大约一毫秒.
我也见过
document.head||document.getElementsByTagName("head")[0];
这会让我相信它document.head更快,而另一个更兼容,除了我做的测试反驳了这一点.
如果一个更兼容,为什么还要使用另一个?
更新:正如一些人所指出的,我的测试是错误的.
Tra*_*s J 12
使用||像这样的运算符是一种特征检测形式.使用时,如果第一个值未定义,则返回后一个值.
因此对于
document.head || document.getElementsByTagName("head")[0];
原因是如果document.head不支持,则至少返回正确的值.
至于你的速度测试,毫秒很长一段时间.我怀疑这真的花了很长时间.事实上,我为此做了一个jsPerf.它表明该getElementsByTagName功能大约慢了80%.
| 归档时间: | 
 | 
| 查看次数: | 10661 次 | 
| 最近记录: |