일반적인 사용 사례가 있습니다 (사용 사례에 너무 구체적 일 수 있음).JavaScript - 데이터를 익명 함수로 전달
이 같은 조각했습니다 : 비동기 익명 함수 위의 호출 코드의 흐름 메신저에서
var x=0,y=10;
var data = {"callback" : function(x,y) {console.log(x,y)}}
일부를
call(data.callback);
내 문제는 내가 '돈 코드의 두 번째 작품이다 function을 호출하는 동안 x, y 데이터가 전달됩니다. 그래서 함수 자체의 선언 중에 데이터 (x, y 변수 데이터)를 첨부 할 수있는 방법이 있습니까?
편집 1 :
@Kursad Gulseven 때문에, 내가 그렇게 보여 간단하게.
그러나 실제로는 "데이터", "콜백"은 동적 이름입니다. 그래서, 나는 data.callback을 간단하게 사용할 수 없다.
비록 내가 할 수 있지만, 내 익명의 함수를 호출하려고하는 변수 (데이터 포함)를 가질 수 없습니다. 익명의 함수를 호출하는 것은 여기서 또 다른 비동기 함수에서 다시 발생하기 때문에.
희망 사항은 분명하고 의미가 있습니다.
왜'data.callback (x, y);'를 사용하지 않을까요? –
전화 (data.callback.bind (data, 1, true, "anything else u need")); 당신은 또한 런타임에 호출/적용을 사용할 수 bind()는 새 함수를 작성합니다 – dandavis
@ dandavis, 당신의 대답은 내 문제를 해결하는 것 같다. 그것을 확인하자. –