我在这个网站上看到了JavaScript和jQuery之间的各种实践差异,我偶然发现了一些迄今为止我都不知道的东西,在这个链接上称为Legacy JavaScript: http://alittlecode.com/comparing-scripts-in-jquery-and-javascript-a-comparison-by-jeffrey-way/
选择元素 jQuery的
$('#container');
的JavaScript
var container = document.querySelector('#container');
旧版JavaScript
var container = document.getElementById('container');
它是什么,更现代的是什么,这里真的是什么?谢谢:
答案 0 :(得分:2)
querySelector()
是新Selectors API的一部分。它比简单getElementById()
更灵活,更强大。
请查看W3C recommendation中的示例:
使用旧的getElementById():
var table = document.getElementById("score");
var groups = table.tBodies;
var rows = null;
var cells = [];
for (var i = 0; i < groups.length; i++) {
rows = groups[i].rows;
for (var j = 0; j < rows.length; j++) {
cells.push(rows[j].cells[1]);
}
}
使用querySelector():
var cells = document.querySelectorAll("#score>tbody>tr>td:nth-of-type(2)");
从这个例子可以看出,这两种方法在功能上并不相同。
另外,请注意,这些都不是Java Script语言本身的一部分,而是浏览器的DOM API。