Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery效率_Jquery_Html - Fatal编程技术网

jQuery效率

jQuery效率,jquery,html,Jquery,Html,我有这样一个问题: $('#tabContainer li'); JetBrains WebStorm IDE强调它是一个低效的查询。它建议我改用这个: $('#tabContainer').find('li') 怎么解释呢?有文档解释这种情况吗?jQuery会将前一个表达式转换为后一个表达式。因此,唯一的区别是jQuery中的一些调用开销。在我看来这是微不足道的 > $'('LyTabCult')。查找(“Li”)< /C>提高可读性(至少对于那些不太熟悉选择器语法的人),我认为使用它

我有这样一个问题:

$('#tabContainer li');
JetBrains WebStorm IDE强调它是一个低效的查询。它建议我改用这个:

$('#tabContainer').find('li')

怎么解释呢?有文档解释这种情况吗?

jQuery会将前一个表达式转换为后一个表达式。因此,唯一的区别是jQuery中的一些调用开销。在我看来这是微不足道的

<> > <代码> $'('LyTabCult')。查找(“Li”)< /C>提高可读性(至少对于那些不太熟悉选择器语法的人),我认为使用它是一个很好的理由。

< P>这有一部分特异性(第四点)。

如果您有
$('#tabContainer li')
,将查询文档中的所有
li
。然后,将检查每个
li
,以查看它们是否有父
#tabContainer

为了更快,可以使用
$('#tabContainer').find('li')
。li将在#tabContainer中搜索,这在文档中是唯一的


但是很明显,如果您选择使用ID,那么性能应该不会有太大的改进(从这个问题的答案中也谈到了特殊性)

我认为优化的理由是速度。Find可以非常快,但对您的特定用例进行基准测试不会有任何影响。例如,这里有一个测试,它使用了一些可能的变化,类似于您尝试执行的操作


在这种情况下,查找速度非常快。现在,如果您只运行该选择一次;不管你用哪种方式做,只要它很容易阅读/理解它的意图。

我也会使用第一种方式。别担心,这个问题应该对你有帮助