我认为document.getElementById
是一个函数。
这个函数可以被赋值给一个变量。就像这样
var hello = document.getElementById;
console.log(hello('hello')));
<div id="hello">hello</div>
但是出现了这样的错误:
未捕获的类型错误:非法调用
我认为document.getElementById
是一个函数。
这个函数可以被赋值给一个变量。就像这样
var hello = document.getElementById;
console.log(hello('hello')));
<div id="hello">hello</div>
但是出现了这样的错误:
未捕获的类型错误:非法调用
document
的上下文。因此,为了达到你所想要的效果,你需要绑定上下文:bind
。var hello = document.getElementById.bind(document);
工作示例:
var hello = document.getElementById.bind(document);
console.log(hello('hello'));
<div id="hello">hello</div>
var hello = function(id){
return document.getElementById(id);
}
console.log( hello('hello') );
<div id="hello">hello</div>
var hello = document.getElementById('hello');
console.log(hello)
- zer00nedocument
。 - Oriol