SQL 쿼리에서 값을 내보낼 때 콜백 지옥 문제 해결
<p>내 목표는 SQL 쿼리에서 결과를 찾으면 <code>someVar</code>를 1로 설정하는 것입니다.
문제는 할당이 로컬이고 <code>console.log(someVar)</code>를 사용하려고 하면 결과가 블록 내부에서는 1이지만 블록 외부에서는 0이라는 것입니다. 블록 외부로 값을 내보내는 방법이 있나요? </p>
<pre class="brush:js;toolbar:false;">someVar = 0;
con.query(`SOME SQL QUERY`, (오류, 행) => {
if (오류) 오류 발생
if (rows.length > 0) {
someVar = 1;
//console.log(someVar) -> 결과는 1입니다.
}
});
con.end();
//console.log(someVar) -> 결과는 0입니다.
if (someVar === 0) {
//일부 코드
}