나는 John Resig의 책 "Secrets of the JavaScript Ninja"를 읽고 있는데이 코드를 사용하여 객체의 프로토 타입을 확장하여 언어의 향후 기능을 예측하는 방법을 설명합니다.이 자바 스크립트 코드의 결과
if(!Array.prototype.forEach){
Array.prototype.forEach = function(fn, callback){
for(var i = 0; i < this.length; i++){
fn.call(callback || null, this[i], i, this);
}
};
}
"callback || null"문은 정의되지 않은 값을 "call"함수에 전달하지 못하도록합니다. 내가 이해할 수없는 것은 "fn"매개 변수의 컨텍스트로 null을 전달할 때 발생할 수있는 결과입니다. 코드가 충돌하지 않을까요?
제공 할 수있는 설명 및/또는 계몽에 감사드립니다.
'callback'은 설명적인 변수 이름이 아닙니다. 'fn'은 실제로 여기에있는 콜백이고'callback'은'this' 값 ... – pimvdb
보통'scope'라는 이름은'callback'이 사용되는 곳에서 사용됩니다. '콜백 (callback) '은 나에게 기능을 함축한다. –
'this_obj'는이 매개 변수의 더 나은 이름입니다. –