Javascript 什么更快? IF 语句中的多个 OR 以 objective-c ss,或一个 IF 具有多个 css 目标

标签 javascript jquery html css

如果当前页面包含以下属性之一,我已经设置了一些代码来运行

if($('body[data-section="chicken"]').length || $('body[data-section="friedchicken"]').length){ 
    (function() {
      ///...
    }
}

现在我可以简单地这样做:

if($('body[data-section="chicken"],body[data-section="friedchicken"]').length){ 
    (function() {
      ///...
    }
}

基本上,一个在目标页面上自动向下滚动的功能。 但我很好奇!哪个更快地检测到这些目标? 以及我问的原因是因为我将使用超过 2 个 css 选择器。

最佳答案

如果速度是一个问题,那么跳过 jQuery 层,直接处理 body 元素,并且只查询一次它的 data-section 属性:

var attr = document.body.getAttribute('data-section');
if (attr == 'chicken' || attr == 'friedchicken') {
    // ...
};

关于Javascript 什么更快? IF 语句中的多个 OR 以 objective-c ss,或一个 IF 具有多个 css 目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40008686/

相关文章:

javascript - 切换多个同名类中的 1 个的 css

javascript - 在javascript中提取正则表达式组不起作用

javascript - 网络请求的格式化字符串 (JavaScript)

javascript - 有没有办法在CSS中自动间隔按钮

Jquery Mobile 出现长选择多个选项和数据 native 菜单 ="false"的问题

javascript - 显示/隐藏 div 中的 bxSlider

javascript - 我的博客上有 Stack Overflow 键盘字形

javascript - Angular 提供者失去了 Controller 的值(value)

JQuery Masonry 图像未正确堆叠

html - 当我在 IE 的 iframe 中有 iframe 时无法删除边框