익명 함수에서 값을 반환하고 싶습니다. 어떻게 아래 코드에서 반환 된 값을 $ id 변수에 할당 할 수 있습니까?js의 익명 함수에서 값을 반환하는 방법
$(document).on("click", '.delete-component', function(e) {
return 4;
});
//$id in this scope should be equal 4
익명 함수에서 값을 반환하고 싶습니다. 어떻게 아래 코드에서 반환 된 값을 $ id 변수에 할당 할 수 있습니까?js의 익명 함수에서 값을 반환하는 방법
$(document).on("click", '.delete-component', function(e) {
return 4;
});
//$id in this scope should be equal 4
여기서 비동기 작업을 수행한다는 사실에 유의해야합니다. 방아쇠를 당긴다. (n은 약간 먼 수를 의미한다.)
1] $(document).on("click", '.delete-component', function(e) {
n+1] return 4;
});
2] console.log('here');
당신이 붙인 것은 청취자와 연결되었다. 클릭은 현재 발생하지 않습니다. 클릭하면 발생합니다. 따라서 클릭이 발생하면 액세스 할 수 있습니다. 다음 두 가지 작업을 수행 할 수 있습니다.
1) 예 1
var myValue = 0;
$(document).on("click", '.delete-component', function(e) {
myValue = 4;
});
function abc() {
console.log('myValue is equal to ' + myValue);
}
// if that line happen before clicking, value will be still 0
execture somewhen abc();
2) 예 2
$(document).on("click", '.delete-component', function(e) {
doSomethingWithValue(4);
});
function doSomethingWithValue() {
console.log('myValue is equal to ' + myValue);
}
콜백하기 당신.
당신은
function aux(param1, callback){
// do whatever...
$(document).on("click", param1, function(e) {
// return 4;
callback(4);
});
}
... asyn의 기능이나 동작에 도달했을 때, 콜백을 사용하는 또 다른 콜백 그래서 일반적으로 수익을 수행 할 작업을 지정해야합니다 그리고 당신은 다음과 같이 코드에서 USIT 것 :
// your context..
// operations 1.. 2..
aux('.delete-component', function(theReturnedValue){
console.log(theReturnedValue); // 4
});
이것은 콜백이 외부 범위로 '반환하는'값입니다.
클릭이 발생하기 전에는 아무 것도 지정할 수 없습니다. 아니요, 비동기 콜백에서 값을 반환 할 수 없습니다 (http://stackoverflow.com/q/23667086/1048572). – Bergi
클릭시 이벤트 콜백이 호출되지만 결과를 지정할 수는 없습니다. 그러나 당신은 그것의 안에서 * 할당 할 수있다. – dfsq
반환 값으로 무엇을 할 예정입니까? –