Promesas (promises) en JavaScript (JS)

Las promesas se introdujeron en ECMAscript 6 y, aunque antes ya podríamos trabajar con ellas ya que existían librerías externas (de terceros) que las implementaban, no fue hasta esta versión en la que se hicieron forma nativa. Básicamente, nos ofrecen una forma más limpia de trabajar con tareas asíncronas.

¿Qué es una promesa?

Promesa = promise (en inglés)

Una promesa en JavaScript es similar a una promesa en la vida real, de ahí que reciban su nombre.

Cuando hacemos una promesa en la vida real (o en JavaScript), tratamos de afirmar que muestra intención de comprometernos a hacer algo en el futuro. Pero no todo lo que se promete se cumple, ya que podemos cruzar los dedos o faltar a nuestra palabra.

En esta especie de contrato verbal que acabamos de “firmar” comprometiéndonos a hacer algo en muchas ocasiones no se garantiza cuando pasará si será en un período breve o muy muy largo…. En las promesas nosotros seremos los encargados de definir el momento en el que evaluaremos si se ha cumplido o no.

Las promesas, por tanto, se enfocan en algo que pasará en el futuro.

Son la parte favorita de todo javaScript de los personjes Dog y Mike de regreso al futuro

Siendo más puristas, si hablamos de ellas en JS, una promesa es un objeto que representa la terminación o el fracaso de una operación asíncrona.

Creación de una promesa en JavaScript

Las promesas se crean llamando al constructor Promise y pasándole una función que recibe dos parámetros: resolve y reject, que nos permiten indicarle a esta que se resolvió o se rechazó.

Para ello, creamos un documento HTML en el que asociamos nuestro script (que contendrá la promesa):

Lo mejor de las promesas es que van dejando rastro. Aunque luego hablaremos de sus estados más profundamente las promesas cuando nacen tienen como estado siempre pendiente (peding) ya que aún no se han cumplido y, por tanto, están a la espera. En este caso en particular hemos dicho que prometemos algo, pero no hemos especificado ni el que.

Si ahora vamos al navegador y abrimos el inspector, vemos que nos aparece como peding:

Si directamente desde la propia consola del DevTool (el inspector del navegador) hacemos un typeof de nuestra promesa (miPrimeraPromesa) podemos ver que estamos trabajando con un objeto.

Promesas con Arrow function (=>)

Actualmente las promesas suelen trabajarse con arrow function (funciones de flecha) ya que son la manera moderna de trabajar. Hacen lo mismo con menos código y de una forma más visual. Vamos a ver un ejemplo:

Promesas como return dentro de una function

Si combinamos una función y una promesa con arrow function el resultado será:

Normalmente trabajaremos así con las promesas. Ya que así podremos almacenar las promesas dentro de una función y podremos pasarle parámetros y además, estarán mejor estructuradas.

Estados de las promesas

Como ya hemos visto un poco más arriba, las promesas tienen estados.

Esto nos lleva a hablar del estado de una promesa, básicamente existen 2 posibles estados.

  • Pendiente (pending): hemos hecho una promesa y estamos a la espera de ver si se cumple o no.
  • Resuelta (settled): la promesa se ha finalizado. El resultado de resolver una promesa (Settled) puede ser:
      • Fullfilled: se cumplió/resolvió con éxito.
      • Rejected: no se pudo cumplir a causa de un error. Depende de nosotros como hagamos el reject.

Una vez las promesas cambian su estado a resueltas (settled → a fulfilled o rejected), ya no pueden volver a cambiar de estado. Esto es debido a que ya hemos evaluado si la promesa de a cumplido o no.

Utilizar resolve y reject como nombre de los parametros de una promesa no es obligatorio, pero si una convención (una buena práctica) que nos permitirá identificarlos mejor ambos caminos.

De hecho, que se utilicen estos métodos surge debido a que si nos metemos dentro del constructor de la promesa podemos ver que los keys del objeto se llaman así:

Los best friends: Resolved y then & reject y catch

Hasta ahora hemos visto como declarar una promesa y cuáles son sus estados. En este punto vamos empezar a desarrollar el contenido del interior de nuestras promesas. Además, aprenderemos a evaluar si la promesa se ha cumplido o no en un determinado momento y ver cómo cambia el estado de la promesa de peding a fullfilled o rejected.

Ejercicio 1 ejemplo con una promesa declarada con function

Imaginaos que os prometo que si lanzamos una moneda al aire saldrá cara.

Aunque es una promesa con una probabilidad del 50 % existe otro 50 % de que no se cumpla.

Si miramos su estado ahora, podemos ver que tenemos fulfilled (resuelta).

Pero, cuando el resultado es cruz, podemos ver que nos aparece el error: Uncaught (in promise) Cruz quejándose de que no hemos atrapado el error:

Esto es debido a que para evaluar correctamente el resultado una promesa tenemos que utilizar los métodos .then y .catch sobre la promesa en sí. Vamos a ver un ejemplo:

.then → captura el valor cuando se cumple la promesa (fullfilled)

.catch → captura el valor cuando se produce un error o no se cumple la promesa (rejected)

El nombre de dentro del .catch y del .then no tiene por qué ser resolveMsg o err podemos ponerle el que querramos.

El resultado de evaluar una promesa no nos devolverá el objeto en si solamente el valor de resolve o reject. Si además hacemos un console.log del objeto recibiremos también el objeto completo y podremos ver su estado entre otras cosas.

Si se cumple lo que he prometido y sale cara la promesa aparece en fulfilled y el resultado que nos devuelve es cara.

Si se incumple lo que he prometido y sale cruz, ahora sí que podemos ver que la promesa aparece en rejected y el resultado que nos devuelve es cruz.

Como ya dijimos anteriormente, que prometas algo no significa que se vaya a cumplir…

Ejercicio 2 portero de discoteca con una promesa dentro de una function

Si hacemos un portero de discoteca que controle el acceso de las personas restringiendo a los menos de 18. Un ejemplo podría ser:

Si cambiamos el valor del parámetro con el que llamamos a la función que devuelve la promesa a 15, podemos ver que el portero nos dice:

Generando errores en promesas

Si evolucionamos nuestro código del portero de discoteca, podemos generar mensajes de errores. Por ejemplo ¿Qué pasaría si le pasamos un texto en vez de una edad? Pues hasta ahora que entraría en el catch y nos denegaría el acceso:

Una manera de solucionarlo es generarnos un mensaje de error. Vamos a ver un ejemplo:

El resultado esta vez será:

Promesas en cadena (promise chaining)

El promise chaining, nos permite encadenar varias promesas a la vez. Para ello, definimos una promesa y vamos concatenando las respuestas con .then

Realmente las promesas ofrecen una alternativa a tener en cuenta ya que pueden manejar múltiples operaciones asincrónicas fácilmente y brindan un mejor manejo de errores que las devoluciones de llamada y los eventos.

El trabajar con promesas y no con callbacks encadenados nos evitará el famoso callback hell o Pirámide de Doom.

El callback Hell o pirámide de doom, consiste en anidar múltiples Callbacks lo que provocan que el código se vuelva difícil de leer y de debuggear; ésta es la principal razón por la cual se debe evitar.

Promise chaining manera asíncrona, pero todas a la vez

Si el parametro de la función inputNumber es un tipo numérico, podemos ver que la pantalla se muestra en blanco:

Y tras dos segundos (el tiempo que hemos definido en la función asíncrona setTimeOut), nos devuelve los tres valores a la vez:

Si modificamos el parámetro de la funcion inputNumber que verifica la promesa, podemos ver que si por ejemplo le ponemos “a”:

Si nos fijamos de esta manera trabajamos con un solo setTimeOut por lo que inmediatamente han pasado los 3 segundos, se resuelven todas las promesas a la vez.

Promise chaining manera asíncrona, pero de una a una

En cambio, si queremos resolver las promesas una a una, de forma asíncrona, podemos hacer:

El resultado de cada una de las promesas irá mostrándose cada 3 segundos:

Tres segundos después:

Tres segundos despues:

Si nos fijamos de esta manera trabajamos con tres setTimeOut por lo que conforme van pasado los 3 segundos, se van resolviendo las promesas una a una.

Añadiendo un finally a nuestro promise chaining (de todas a la vez):

Finally, nos permite ejecutar un bloque al final de nuestro encadenamiento de promesas:

Como podemos ver el bloque finally se ejecuta siempre que la promesa sea evaluada y cambie de estado (settled) independiemente de que la promesa finalice en fulfilled o rejected

Ejercicio de ejemplo real de una promesa

Bueno, para acabar os dejo un ejercicio un poco más complejo.

Vamos a imaginar que dos hijos (Marta y Raúl) le dicen a su madre que les dé 30 €. De los que 10 € son para imprimir un trabajo del colegio y 20 € son para comer con unos amigos.

La madre le dice que no, que solamente les da 20 € porque le asusta que sus hijos tengan mucha hambre y les dé un impulso y se gasten los 30 € comiendo. Lo que supondría tender que volver a pagar 10 € más por cada uno de sus hijos, 20 € más en total y supondría no poder comprarse el bolso que ha visto en un escaparate esta mañana.

Pero sus hijos se ponen muy pesados y le juran y le perjuran que eso no pasará hasta el punto en el que se lo acaban prometiendo a su madre.

8 horas después, (en el ejemplo serán 8 segundos después) la madre vendrá de trabajar y evaluará si sus hijos han cumplido sus promesas. Y si no lo han hecho, echará bronca a quién la haya incumplido o a los dos en el caso de que los dos hayan incumplido a sus promesas. En el caso de que ambos cumplan, los felicitará.

Pero como ya dijimos anteriormente, que lo jures no significa que se vaya a cumplir…

Vamos a realizar este ejercicio con varias promesas que se concatenen entre si mediante al promise chaining que ya conocemos.

El ejemplo podría ser:

Si Marta incumple su promesa:

Tras 8 horas, podemos ver que al llevar su madre y que riñe a Marta:

Si se pasa Raúl, lo mismo, tras 8 horas, podemos ver que al llevar su madre y que riñe a Raúl:

Si incumplen su promesa los dos, se enfada aún más, y les dice:

Y, por último, si ambos cumplen su promesa, su madre se pone feliz y felicita a ambos:

Espero que os haya permitido familiarizarnos un poco más con el concepto de las promesas. Un saludo y hasta la próxima

64 comentarios

  1. This is my first time go to see at here and i am truly
    pleassant to read everthing at one place.

  2. Wow, superb weblog format! How lengthy have you ever been running a blog for?
    you made blogging look easy. The total glance of your web site is wonderful, as well as the content material!

  3. We wish to thank you once again for the stunning ideas
    you offered Jesse when preparing a post-graduate research
    and also, most importantly, with regard to providing all the
    ideas within a blog post. In case we had been aware of your web page
    a year ago, we may have been rescued from the unwanted measures we were implementing.
    Thank you very much.

    Review my blog – Tacoma Farms CBD Review

  4. I pay a visit day-to-day a few blogs and websites to read content,
    except this webpage presents feature based writing.

    Check out my blog: Clean Cut Keto Diet

  5. Heya! I realize this is sort of off-topic however I needed to
    ask. Does managing a well-established blog like yours take a large amount of work?

    I’m completely new to writing a blog however I do write in my journal daily.
    I’d like to start a blog so I will be able to share my experience and
    feelings online. Please let me know if you have any kind of ideas or tips for brand
    new aspiring bloggers. Appreciate it!

    My web page; Bio Wellness CBD Gummies Review

  6. A person essentially lend a hand to make severely posts I might
    state. This is the first time I frequented your web page and up to now?
    I amazed with the analysis you made to create this actual publish incredible.
    Excellent task!

    Here is my page Bio Wellness CBD Gummies Price

  7. Wow that was unusual. I just wrote an very long comment but after I clicked submit my
    comment didn’t appear. Grrrr… well I’m not writing
    all that over again. Anyways, just wanted to say wonderful blog!

  8. Nice post. I learn something totally new and challenging on sites I stumbleupon everyday.
    It will always be exciting to read through content
    from other writers and practice a little something
    from their websites.

    Here is my page … Jaimie

  9. I am regular visitor, how are you everybody? This paragraph posted at this website is in fact nice.

    Feel free to surf to my blog post – Green Naturals CBD Gummimes

  10. obviously like your web-site however you need
    to check the spelling on quite a few of your posts. Many of them are rife with spelling problems
    and I find it very troublesome to inform the reality however I’ll surely come back again.

    Here is my web site; Keto Max XR Diet

  11. Thank you so much for giving me personally an update on this
    subject matter on your website. Please understand that if a new post
    appears or in the event that any modifications occur on the current article,
    I would be considering reading more and learning
    how to make good using of those strategies you talk
    about. Thanks for your efforts and consideration of people by making this website available.

    My website – Health Flow Male Enhancement Review

  12. Thanks for finally writing about > Promesas (promises) en JavaScript (JS) – Java desde 0 < Liked it!

    Feel free to visit my homepage: Dermal Pearle

  13. Thanks for the auspicious writeup. It in reality was a leisure account it.
    Glance advanced to far brought agreeable from you! By the
    way, how could we keep in touch?

    Feel free to surf to my blog post; Keto Complete

  14. This excellent website certainly has all of the information I needed
    about this subject and didn?t know who to ask.

    Also visit my website hltkd.tw

  15. Thank you for every other informative website. The place
    else may just I get that type of information written in such an ideal way?
    I’ve a project that I’m simply now running on, and I’ve been at
    the glance out for such information.

  16. Good day very nice site!! Guy .. Beautiful ..
    Wonderful .. I will bookmark your blog and take the feeds
    additionally…I’m happy to find a lot of useful info here in the post, we want develop more techniques on this regard,
    thank you for sharing.

    Also visit my web page: Max Keto Fuel (http://www.meteoritegarden.com)

  17. Spot on with this write-up, I absolutely think this web site needs a
    lot more attention. I?ll probably be returning to see more, thanks for the information!

    Feel free to surf to my web-site – Normand

  18. Magnificent goods from you, man. I’ve understand your stuff previous to and
    you are simply too excellent. I actually like what you have
    received right here, really like what you’re stating and the way in which through which you
    say it. You’re making it enjoyable and you still care for
    to stay it smart. I can not wait to learn far more from you.
    This is actually a great web site.

    Also visit my blog post; Dermal Pearle Ageless Moisturizer

  19. I’d forever want to be update on new posts on this web site, saved to my bookmarks!

    Feel free to surf to my page: Testo Bull Review

  20. First off I would like to say fantastic blog! I had a quick
    question in which I’d like to ask if you don’t mind. I was interested to know how you center yourself and clear your thoughts prior to writing.
    I’ve had a difficult time clearing my thoughts in getting my ideas out there.

    I do take pleasure in writing however it just
    seems like the first 10 to 15 minutes are generally wasted just trying to figure out how
    to begin. Any recommendations or hints? Thanks!

    Look at my web blog :: Tacoma Farms CBD

  21. Hello, i read your blog from time to time and i
    own a similar one and i was just curious if you get a
    lot of spam responses? If so how do you stop it, any plugin or anything you
    can advise? I get so much lately it’s driving me mad so any support is
    very much appreciated.

  22. Enjoyed reading through this, very good stuff, thank you.

    my web page :: Testo Bull Review

  23. Usually I do not learn post on blogs, however I would like to say
    that this write-up very pressured me to take a look at and do it!
    Your writing style has been amazed me. Thank you, quite great article.

    Also visit my website: Jeffery

  24. Hey! Someone in my Myspace group shared this website with us so I came to check it out.
    I’m definitely enjoying the information. I’m bookmarking and will be tweeting this to my followers!
    Great blog and outstanding style and design.

    Also visit my web-site; Natural Burn Keto Pills

  25. Pretty nice post. I just stumbled upon your blog and
    wanted to say that I have really enjoyed surfing around your blog posts.
    In any case I’ll be subscribing to your feed and I hope you write again soon!

    Here is my site :: Hempizor CBD

  26. Highly energetic post, I loved that bit. Will there be a part 2?

    my homepage … prettypeople.club

  27. Hello, its nice piece of writing on the topic of media print, we all know media is a wonderful
    source of facts.

  28. Wow, superb weblog layout! How lengthy have
    you ever been running a blog for? you make blogging
    look easy. The total look of your website is fantastic, as well as the
    content material![X-N-E-W-L-I-N-S-P-I-N-X]I simply couldn’t leave your website before
    suggesting that I actually loved the usual information an individual supply for your
    visitors? Is going to be again steadily to check up on new posts.

    my homepage – Clean Cut Keto Pills

  29. Keep functioning ,fantastic job!

    Also visit my blog … Tacoma Farms CBD Reviews

  30. My developer is trying to convince me to move to .net from PHP.
    I have always disliked the idea because of the expenses.
    But he’s tryiong none the less. I’ve been using Movable-type on a number of websites for about a year and am concerned about
    switching to another platform. I have heard very good things about
    blogengine.net. Is there a way I can import all my wordpress
    content into it? Any help would be greatly appreciated!

  31. I would like to take the chance of thanking
    you for that professional direction I have often enjoyed visiting your site.

    I will be looking forward to the particular commencement of my university research and the whole planning would never
    have been complete without surfing your blog. If I could be of any assistance to others, I’d be ready to help by what I have discovered from here.

    My web page: Lithederm

  32. It’s appropriate time to make some plans for the future and it’s time
    to be happy. I have read this post and if I could I want to suggest you few interesting things or advice.
    Perhaps you could write next articles referring to this
    article. I desire to read more things about it!

  33. Since the admin of this site is working, no uncertainty very shortly it will be famous, due to its quality
    contents.

    Also visit my website – Bio Wellness CBD Gummies Reviews

  34. Thank you a lot for sharing this with all folks
    you actually recognize what you’re speaking approximately!
    Bookmarked. Kindly additionally consult with my site =).
    We will have a hyperlink alternate agreement between us!

    My website; shihan.com.ru

  35. At this moment I am going away to do my breakfast, when having my breakfast coming yet again to
    read other news.

    My web blog Pure Remedy CBD

  36. If you want to take much from this article then you have to apply such strategies to your won blog.

    my page … Quinton

  37. Right here is the perfect site for anyone who wishes to find out about this topic.

    You realize a whole lot its almost hard to argue with you (not that I actually
    would want to…HaHa). You certainly put a new
    spin on a topic that’s been discussed for years.
    Wonderful stuff, just great!

    Here is my web site :: WifiLift Wifi Extender

  38. Great weblog right here! Additionally your web site a lot
    up very fast! What web host are you using? Can I am
    getting your associate hyperlink on your host? I want my site loaded up as quickly
    as yours lol.

    My blog post :: Infinity CBD Reviews

  39. I just now wanted to thank you a lot more for this
    amazing web page you have made here. Its full of useful tips for those who are truly interested in this subject, primarily this very post.

    You really are all amazingly sweet plus thoughtful of others as well as reading your website posts is a great delight in my
    experience. And what generous surprise! Mary and I usually have excitement making use of your tips in what we must do in a month’s time.
    Our list is a distance long and simply put tips might be put to great use.

    Also visit my website Dermal Pearle Review

  40. Hello.This article was extremely remarkable, especially since
    I was searching for thoughts on this subject last Saturday.

    Here is my blog post: Brilliance Keto Reviews

  41. I blog often and I genuinely appreciate your information. The article has truly
    peaked my interest. I will book mark your blog and keep checking for new information about once per week.
    I subscribed to your RSS feed as well.

    My homepage Clean Cut Keto Ingredients

  42. I’m not sure exactly why but this blog is loading very slow for me.
    Is anyone else having this issue or is it a issue on my end?
    I’ll check back later and see if the problem still exists.

    Here is my site – Total Keto 365 Reviews

  43. Hi, i think that i saw you visited my site so i came to ?return the favor?.I
    am trying to find things to improve my website!I suppose its ok to use some of your ideas!!

    Here is my blog Hedofirm 360 Pills

  44. What’s up, I would like to subscribe for this web site to obtain hottest updates, therefore where can i do it please assist.

  45. Hello to every single one, it’s really a good for me to go to see
    this website, it contains useful Information.

    Here is my web site Clean Cut Keto Reviews

  46. Hi to every single one, it’s truly a good for me to go to see this web page, it
    includes valuable Information.

    Also visit my page: Health Flow Male Enhancement Ingredients

  47. Please let me know if you’re looking for a author for your site.
    You have some really good posts and I think I would be
    a good asset. If you ever want to take some of the load off, I’d love to
    write some articles for your blog in exchange for a link back to mine.
    Please blast me an e-mail if interested.

    Many thanks!

    My site – https://ko-burda.com/index.php?action=profile;u=151203

  48. Pretty! This was a really wonderful article. Many thanks for providing
    this info.

    Feel free to visit my blog – Brilliance Keto Pills

  49. I visit day-to-day some websites and websites to read articles or reviews,
    but this web site presents quality based writing.

    Also visit my blog post: Infinity CBD Gummies

  50. Outstanding story there. What occurred after? Take care!

    Feel free to surf to my web page – Fast Dash Keto Review

  51. This web site is my intake, really great design and style and Perfect subject matter.

    My web site Gold Leaf CBD Gummies

  52. What i do not realize is actually how you’re not really much more neatly-appreciated than you might be
    right now. You’re very intelligent. You know thus significantly on the
    subject of this matter, produced me in my view
    consider it from numerous varied angles. Its like men and women are not interested unless it’s
    one thing to accomplish with Woman gaga! Your personal stuffs great.
    Always take care of it up!

    My web page – Bio Wellness CBD Gummies Review

  53. I was honored to obtain a call coming from a friend as soon as he found the important ideas shared in your site.
    Going through your blog post is a real amazing experience.
    Thank you for thinking about readers just like me, and I hope for you the
    best of success being a professional in this area.

    Feel free to surf to my web-site – Brilliance Keto Pills

  54. This info is priceless. Where can I find out more?

  55. But wanna input on few general things, The website design is perfect, the articles is really superb :
    D.

    Also visit my web site … Vigalix Pills

  56. Deference to op, some great information.

    Take a look at my website; Testo Bull Review

  57. Hello.This article was extremely remarkable, especially because
    I was browsing for thoughts on this topic last Wednesday.

    Also visit my website – Brilliance Keto Ingredients

  58. Hi, I think your website might be having browser compatibility issues.

    When I look at your blog in Chrome, it looks fine but when opening in Internet Explorer,
    it has some overlapping. I just wanted to give you a quick heads
    up! Other then that, great blog!

    My web site; http://shihan.com.ru/modules.php?name=Your_Account&op=userinfo&username=LombardChante

  59. Great story over again. Thanks a lot:)

    my homepage … Kristopher

  60. I’ve been surfing on-line greater than three hours nowadays,
    yet I never discovered any attention-grabbing article like yours.
    It’s pretty value sufficient for me. In my opinion, if all website owners and bloggers made good content as you
    probably did, the internet will likely be a lot more
    useful than ever before.

    Here is my website … Far East XL Review

  61. Normally I do not learn post on blogs, however I wish to say that this write-up very forced me to take a look
    at and do it! Your writing style has been surprised me.

    Thanks, quite great article. scoliosis surgery https://coub.com/stories/962966-scoliosis-surgery scoliosis surgery

  62. Good ? I should definitely pronounce, impressed with your
    site. I had no trouble navigating through all
    tabs and related info ended up being truly easy
    to do to access. I recently found what I hoped for before you know it in the least.
    Reasonably unusual. Is likely to appreciate it for
    those who add forums or something, web site theme . a tones way for your customer to
    communicate. Nice task.

    Also visit my page; http://www.meteoritegarden.com

  63. Keep up the excellent work, I read few blog posts on this site and I conceive that your web
    site is really interesting and has lots of excellent
    info.

    Take a look at my webpage … meteoritegarden.com

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

La Ley 34/2002 nos obliga a avisarte de que usamos cookies propias y de terceros con objetivos estadísticos y de sesión y para mostrarte la 'publi' que nos da de comer. Tranquilo, este mensaje solo sale una vez. Más información

Java desde 0 comunica a los usuarios, a través de este aviso, que puede utilizar cookies cuando el usuario navega por las diferentes pantallas y páginas del sitio. Durante el uso de nuestra página Web usted acepta y autoriza expresamente el uso de cookies, de acuerdo con nuestra Política de Privacidad. Este sitio web utiliza las siguientes cookies propias: - Cookies de sesión, para garantizar que los usuarios que escriban comentarios en el blog sean humanos y no aplicaciones automatizadas. De esta forma se combate el spam. Este sitio web utiliza las siguientes cookies de terceros: - Google AdManager y AdSense: Utiliza cookies para mejorar la publicidad. Entre otros fines, suelen utilizarse para segmentarla según el contenido que sea relevante para los usuarios o su ubicación, mejorar los informes de rendimiento de las campañas y evitar mostrar anuncios que los usuarios ya hayan visto. Las cookies no contienen información personal identificable. Consulta cómo utiliza Google la información de sitios web o aplicaciones. y cómo bloquear determinados anuncios. - Google Analytics: Almacena cookies para poder elaborar estadísticas sobre el tráfico y volumen de visitas de esta web. Al utilizar este sitio web está consintiendo el tratamiento de información acerca de usted por Google. Por tanto, el ejercicio de cualquier derecho en este sentido deberá hacerlo comunicando directamente con Google. - Redes sociales: Cada red social utiliza sus propias cookies para que usted pueda pinchar en botones del tipo Me gusta o Compartir.

Cerrar