Notification.permission

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Nota: Esta característica está disponible en Web Workers.

Contexto seguro: Esta función está disponible solo en contextos seguros (HTTPS), en algunos o todos los navegadores que lo soportan.

La propiedad de solo lectura permission de la interfaz Notification indica el permiso concedido por el usuario al origen actual para mostrar notificaciones web.

Sintaxis

js
var permission = Notification.permission;

Valor

Una DOMString representa el permiso actual. El valor puede ser:

  • granted: El usuario ha concedido el permiso explicitamente al origen actual para mostrar notificaciones del sistema.
  • denied: El usuario ha denegado el permiso explicitamente al origen actual para mostrar notificaciones del sistema.
  • default: La decisión del usuario es deconocida; en este caso la aplicación actuará como si el permiso fuese denied

Ejemplos

El siguiente código podría ser usado si quisieras primero comprobar si las notificaciones son soportadas, luego comprobar si los permisos han sido concedidos al origen actual para enviar notificaciones, y luego solicitar permiso de ser requerido, antes de enviar una notificación.

js
function notifyMe() {
  // Comprobamos si el navegador soporta las notificaciones
  if (!("Notification" in window)) {
    console.log(
      "Este navegador no es compatible con las notificaciones de escritorio",
    );
  }

  // Comprobamos si los permisos han sido concedidos anteriormente
  else if (Notification.permission === "granted") {
    // Si es correcto, lanzamos una notificación
    var notification = new Notification("Hola!");
  }

  // Si no, pedimos permiso para la notificación
  else if (
    Notification.permission !== "denied" ||
    Notification.permission === "default"
  ) {
    Notification.requestPermission(function (permission) {
      // Si el usuario nos lo concede, creamos la notificación
      if (permission === "granted") {
        var notification = new Notification("Hola!");
      }
    });
  }

  // Por último, si el usuario ha denegado el permiso, y quieres ser respetuoso, no hay necesidad de molestarlo.
}

Especificaciones

Specification
Notifications API
# dom-notification-permission

Compatibilidad con Navegadores

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
permission static property

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
No support
No support
See implementation notes.

Véase también