为什么不引用document.querySelectorAll呢?

时间:2015-09-17 02:35:22

标签: javascript

对于funsies,我尝试创建document.querySelectorAll的简写版本,使其像jQuery一样可用。这是代码:

window.$ = document.querySelectorAll;

var links;
links = document.querySelectorAll('a'); // Works
links = $('a'); // Doesn't work

出于某种原因,$即使是document.querySelectorAll的引用也无效。我知道我可以这样做:

function $(selector) {
  return document.querySelectorAll(selector);
}

但我只是不明白为什么第一个例子不起作用。

1 个答案:

答案 0 :(得分:1)

不同的this变量:

document.querySelectorAll() -> `this` is document
querySelectorAll() -> `this` is window