var sql = "SELECT * from addresses"; new Promise(function (resolve, reject) { JwApp.db.executeSql(sql, [], function (resultSet) { console.log('Length: '+resultSet.rows.length); for(var i = 0; i < resultSet.rows.length; i++) { results[resultSet.rows.item(i).id] = resultSet.rows.item(i); } console.log(results); resolve(results); }, function(error) { console.log('SELECT error: ' + error.message); reject(error.message); }) }) .then(function (res) { console.log('Execuited Then'); console.log(res); }) .catch(function (res) { console.log('Execuited Then Reject'); console.log('SQL error: '+res); });