0
나는 Prototype을 사용하여 클래스 세트로 리팩토링 할 때 사용하는 다소 큰 자바 스크립트 함수를 가지고 있습니다.클래스에 대한 익명의 javascript 함수 바인딩을 단순화
클래스에 익명 함수를 바인딩 할 수있는 방법이 있는지 궁금합니다. 마지막에 바인드를 추가하는 것을 잊어 버립니다. 아니면 항상 이렇게하는 것입니까?
var arr = this.getSomeArray();
arr.each(function(t) {
t.update(val);
this.updateJSValue(t);
}.bind(this));
로컬 변수를 사용하면 어떤 종류의 성능 향상/감소가 있습니까? 이런 일이 일어나고있는 대부분의 장소는 이중 루프에 있습니다. – Casey
변수가 클로저로 인해 더 오래 지속되기 때문에 메모리 사용량이 약간 증가 할 것으로 예상되지만 성능에 미치는 영향은 무시할 수 있어야합니다. 'bind'는 로컬 변수를 사용할 가능성이 높습니다. – outis
이 코멘트는 성능보다는 정확성과 더 관련이 있습니다.하지만 반복 할 때마다 동일한 객체에 바인딩하려는 경우 루프 외부에서 'self'를 설정하면 성능에 미치는 영향을 눈치 채지 못할 것입니다. 다른 객체에 바인드하려면 루프 블록 안에'self'를 선언하십시오. – outis