相关疑难解决方法(0)

jQuery vs document.querySelectorAll

我多次听说jQuery最强大的资产是它在DOM中查询和操作元素的方式:你可以使用CSS查询来创建在常规javascript中很难做到的复杂查询.不过,据我所知,就可以实现同样的结果document.querySelector或者document.querySelectorAll,这是在Internet Explorer 8和更高版本支持.

所以问题是这样的:如果使用纯JavaScript可以实现最强大的资产,为什么'冒险'jQuery的开销?

我知道jQuery不仅仅有CSS选择器,例如跨浏览器AJAX,附带好的事件等等.但它的查询部分是jQuery强大的一部分!

有什么想法吗?

html javascript jquery css-selectors jquery-selectors

151
推荐指数
8
解决办法
12万
查看次数

JQuery grep(...)VS本机JavaScript过滤器(...)函数性能

我测量了这两个函数的执行时间:

使用Chrome配置文件工具测量了以下方法的执行情况:

// jQuery GREP function
function alternative1(words, wordToTest) {
  return $.grep(words, function(word) {
    return wordToTest.indexOf(word) != -1;                    
  });
}

// Native javascript FILTER function        
function alternative2(words, wordToTest) {
  return words.filter(function(word) {
    return wordToTest.indexOf(word) != -1;                    
  });
}
Run Code Online (Sandbox Code Playgroud)

数组由words100万个随机生成的字符串构成.每种方法运行20次.令我惊讶的是jQuerygrep功能更快.

执行时间(20次执行):

  • jQuery grep函数26,31s
  • 原生JavaScript 过滤功能34,66s

你可以在这个jsFidle上重复测量- 执行需要一些时间,所以请耐心等待.

有没有解释为什么jQuery grep函数比原生 JavaScript 过滤器功能更快?

PS:这个问题的灵感来自于这个答案.

javascript performance jquery native execution-time

14
推荐指数
1
解决办法
1万
查看次数

的jquery +阵列/ JSON?

可以说我有这个阵列

[{k:2, v:"Stack"}, {k:5, v:"Over"}, , {k:9, v:"flow"}]
Run Code Online (Sandbox Code Playgroud)

如何选择值<= 5的所有键之类的元素?或奇数编号键上的前2个元素或所有值(拼写溢出)

我不想使用for/foreach循环.我正在寻找像jquery这样的东西,我可以在它匹配的东西上应用一些东西.有点像将newclassproperty应用于组类的所有dom内部

$('.group a').addClass('newclassproperty')
Run Code Online (Sandbox Code Playgroud)

javascript arrays json

-1
推荐指数
1
解决办法
68
查看次数