Невозможно вернуть массив в вызывающую функцию, возвращенный массив имеет значение "undefined" - PullRequest
0 голосов
/ 31 марта 2020

Я выполняю какую-то операцию с базой данных,

  1. отправляет JSON в dataTable функцию
  2. , используя для l oop, выполнить все JSON elements
  3. Если элемент существует в базе данных, pu sh, что data для найденного массива
  4. Если нет, pu sh "false" для найденного массива и
  5. возврата к getResults ().
  6. , но я получаю результат как undefined .

Наблюдение Я знаю, куда я нажимаю, результат находится внутри функции. Вот почему я получаю результаты как undefined , но я немного запутался.

function getResults(){

var data = [
        {
            "place": "bangalore"
        },
        {
            "place": "mangalore"
        }
    ]

     var result=dataTable(data)       // calling the function dataTable
     console.log(result)              // its printing "undefined"
}

const dataTable = async (data) => {
    var found=[]                                                   //initializing the array
    for (let i=0;i<data.length;i++) {
        dat = data[i]['place'];
        try {

        let sql='SELECT * FROM table WHERE data =?';
        let query = await connection.query(sql,[dat], (err, result) => {
            if (err) throw err;
            if (Object.keys(result).length === 1) {
                found.push(url)                                 //pushing to the array every iteration
    enter code here
            }else {
                found.push("false")                             //pushing to the array every iteration
            }
        });

    }catch (e) {
        return e;
    }
  }
return found;                                              //return to the calling function
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...