Why do built-in functions not have a prototype property?
Я вижу сообщение по вышеуказанной ссылке, но это не решение моей проблемы.
Я могу повторить некоторые встроенные объекты, какНевозможно реплицировать встроенную функцию в javascript
var w=window;
w.alert("hi");
var d=document;
console.log(d.getElementById);
Но я не могу повторить ФУНКЦИИ
var a=document.getElementById;
console.log(a);
Прототип копируется, но когда invocating Он не работает
var a=document.getElementById;
console.log(a('id'));
Я использую это, чтобы снизить усилие кодирования. Я знаю, что я могу добиться этого с помощью
function a(id){
return document.getElementById(id);
}
console.log(a('id'));
Но это не то, что я ищу. Есть ли другой способ репликации funciton
'вар а = document.getElementById.bind (документ);' работы. – Xufox
Это не связано с прототипом, но * этот * при вызове getElementById * должен быть установлен в * document *. В третьем примере вы также можете выполнить 'a.call (document, id)'. – RobG