usar - promises javascript w3schools



javascript, promesas, cómo acceder a esta variable dentro de un ámbito de aplicación (1)

Su segundo ejemplo de código es el camino correcto a seguir. Debido a que el alcance cambia en la nueva función, this también cambia, por lo que tiene derecho a hacer una referencia a this fuera de la función.

La razón por la que falló es porque la función está utilizando a que pasó a la función en lugar de la global que definió fuera de ella.

En otras palabras:

var a = this;
one().then(function () {
  console.log(a)
});

Esta pregunta ya tiene una respuesta aquí:

Quiero poder llamar a una función dentro del ámbito .then , y para eso uso la forma this.foo () . Pero si hago esto dentro del . Entonces obtengo un error, ya que esto parece estar perdido. ¿Que puedo hacer?

En este código, esto sería equivalente a tener la misma salida para el objeto este

console.log(this)
one().then(function() {
  console.log(this)
})

function one() {
  var deferred = $q.defer();
  deferred.resolve()
  return deferred.promise;
}

Esto tampoco parece funcionar

console.log(this)
var a = this;
one().then(function(a) {
  console.log(a)
})




angular-promise