recursal/MDN huggingface dataset:
PasswordCredential.iconURL
==========================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La propriété **`iconURL`**, rattachée à l'interface `PasswordCredential`, est accessible en lecture seule et fournit une chaîne de caractères `USVString` représentant une URL pointant vers l'image d'une icône. Cette image est destinée à être affichée dans un sélecteur d'authentification. L'URL fournie doit être accessible sans authentification.

Syntaxe
-------


```js
url = passwordCredential.iconURL;
```

### Valeur

Une chaîne de caractères `USVString` contenant une URL.

Spécifications
--------------

| Specification |
| --- |
| Credential Management Level 1 # dom-credentialuserdata-iconurl |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
DOMPoint.DOMPoint()
===================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

Le constructeur **`DOMPoint()`** crée un nouvel objet `DOMPoint`.

Syntaxe
-------


```js
var myDOMPoint = new DOMPoint(x, y, z, w);
```

### Paramètres

x

La coordonnée `x` pour le nouveau `DOMPoint`.

y

La coordonnée `y` pour le nouveau `DOMPoint`.

z

La coordonnée `z` pour le nouveau `DOMPoint`.

w

La valeur de perspective du nouveau `DOMPoint`.

Exemples
--------

Pour créer un nouveau `DOMPoint`, vous pourriez exécuter une ligne de code comme celle-ci :


```js
var myDOMPoint = new DOMPoint(0.4, 0.5, -0.5, 1);
// le lancement de 'myDOMPoint' dans la console devrait renvoyer
// DOMPoint { x: 0.4, y: 0.5, z: -0.5, w: 1 }
```

Spécifications
--------------

| Specification |
| --- |
| Geometry Interfaces Module Level 1 # dom-dompoint-dompoint |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `DOMPoint`
* `DOMRect`
Navigator.languages
===================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La propriété en lecture seule **`Navigator.languages`** renvoie un tableau de chaînes de caractères `DOMString` qui représente les langues préférées de l'utilisatrice ou de l'utilisateur. Les langues sont représentées au format défini par la RFC 5646, aussi connu sous le nom de balise BCP 47. Les éléments du tableau sont triés par ordre de préférence, la langue préférée étant située en première.

La valeur de `navigator.language` correspond au premier élément du tableau.

Lorsque les langues préférées sont modifiées, la valeur de cette propriété change et un évènement `languagechange` est déclenché sur l'objet `Window`.

Pour chaque requête HTTP du navigateur, l'en-tête HTTP `Accept-Language` utilise la même valeur que `navigator.languages` si on omet les champs de valeurs de qualité (`qvalues`) (par exemple `en-US;q=0.8`).

Valeur
------

Un tableau de chaînes de caractères.

Exemples
--------


```js
navigator.language; // "en-US"
navigator.languages; // ["en-US", "zh-CN", "ja-JP"]
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-navigator-languages-dev |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Navigator.language`
* `Navigator`
* L'évènement `languagechange`
Navigator.geolocation
=====================

**`Navigator.geolocation`** est une propriété en lecture seule, qui retoune un objet `Geolocation` donnant accès aux contenus web de localisation de l'appareil. Ceci permet à un site Internet ou à une application d'offrir des résultats personnalisés basés sur la localisation des utilisateurs.

**Note :** Pour des raisons de sécurité, quand une page web essaie d'accéder aux informations de localisation, l'utilisateur reçoit une notification qui lui demande la permission d'activer cette fonctionnalité. Chaque navigateur a sa propre politique et ses propres méthodes pour demander cette permission.

Syntaxe
-------


```js
geo = navigator.geolocation;
```

Spécifications
--------------

| Specification |
| --- |
| Geolocation API # dom-navigator-geolocation |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* Utiliser la géolocalisation (en-US)
Navigator.connection
====================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

**`Navigator.connection`** est une propriété en lecture seule, elle représente une `NetworkInformation` (en-US) qui contient les informations de la connexion du système, telles que la bande passante actuelle du périphérique utilisateur ou si la connexion est mesurée. La propriété peut être utilisée pour sélectionner un contenu en haute ou basse définition, dépendant de la connexion de l'utilisateur.

Syntaxe
-------


```js
connexionInfo = navigator.connection;
```

Spécifications
--------------

| Specification |
| --- |
| Network Information API # connection-attribute |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* Évènements online et offline
Navigator.credentials
=====================

**Contexte sécurisé:** Cette fonctionnalité est uniquement disponible dans des contextes sécurisés (HTTPS), pour certains navigateurs qui la prennent en charge.

La propriété **`credentials`**, rattachée à l'interface `Navigator`, renvoie l'interface `CredentialsContainer` qui expose des méthodes pour demander des informations d'authentification. L'interface `CredentialsContainer` notifie également l'agent utilisateur lorsqu'un évènement pertinent se produit (une connexion ou une déconnexion réussie par exemple). Cette propriété peut être utilisée pour détecter si la fonctionnalité est prise en charge ou non.

Syntaxe
-------


```js
var credentialsContainer = navigator.credentials;
```

### Valeur

L'interface `CredentialsContainer`.

Exemples
--------


```js
if ("credentials" in navigator) {
  navigator.credentials.get({ password: true }).then(function (creds) {
    // Gérer les informations d'authentification
  });
} else {
  // Gérer la connexion comme avant
}
```

Spécifications
--------------

| Specification |
| --- |
| Credential Management Level 1 # framework-credential-management |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
Navigator.getGamepads()
=======================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La méthode **`Navigator.getGamepads()`** renvoie un tableau d'objets `Gamepad`, un par contrôleur connecté à la machine.

Des éléments dans le tableau peuvent être `null` si un contrôleur est déconnecté durant la session, ainsi les autres restants gardent le même indice.

Syntaxe
-------


```js
var arrayGP = navigator.getGamepads();
```

Exemple
-------


```js
window.addEventListener("gamepadconnected", function (e) {
  var gp = navigator.getGamepads()[0];
  console.log(
    "Contrôleur n°%d connecté : %s. %d boutons, %d axes.",
    gp.index,
    gp.id,
    gp.buttons.length,
    gp.axes.length,
  );
});
```

Spécifications
--------------

| Specification |
| --- |
| Gamepad # dom-navigator-getgamepads |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* Utiliser l'API Gamepad
* L'API Gamepad
Navigator.storage
=================

**Contexte sécurisé:** Cette fonctionnalité est uniquement disponible dans des contextes sécurisés (HTTPS), pour certains navigateurs qui la prennent en charge.

La propriété en lecture seule **`Navigator.storage`** renvoie l'objet singleton `StorageManager` (en-US) qui permet d'accéder aux différentes fonctionnalités de stockage du navigateur pour le site ou l'application courante. L'objet renvoyé permet d'examiner et de configurer la persistance des magasins de données et de connaître approximativement l'espace disponible restant pour le stockage local du navigateur.

Valeur
------

Un objet `StorageManager` (en-US) qui peut être utilisé pour gérer la persistance des données enregistrées et qui permet de connaître approximativement l'espace restant pour le stockage des données.

Spécifications
--------------

| Specification |
| --- |
| Storage Standard # dom-navigatorstorage-storage |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `StorageManager` (en-US)
* `Navigator`
Navigator.cookieEnabled
=======================

`navigator.cookieEnabled` retourne une valeur booléenne qui indique si les cookies sont activés. Cette propriété est en lecture seule.

Syntaxe
-------


```js
var cookieEnabled = navigator.cookieEnabled;
```


* `cookieEnabled` est un Boolean: `true` ou `false`.
Example
-------


```js
if (!navigator.cookieEnabled) {
  // Ce navigateur ne supporte pas ou bloque les cookies.
}
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-navigator-cookieenabled-dev |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
Navigator.serviceWorker
=======================

Le **`Navigator.serviceWorker`** est une propriété en lecture seule qui renvoie un objet `ServiceWorkerContainer`, et qui permet d'accéder à l'enregistrement, la suppression, la mise à jour, et la communication avec les objets `ServiceWorker` pour le document associé.

Syntaxe
-------


```js
var workerContainerInstance = navigator.serviceWorker;
```

### Valeur

L'objet `ServiceWorkerContainer`.

Exemples
--------

Le code ci-dessous vérifie si le navigateur supporte les service workers.


```js
if ("serviceWorker" in navigator) {
  // Supported!
}
```

Spécifications
--------------

| Specification |
| --- |
| Service Workers # navigator-service-worker-attribute |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* ServiceWorker API (en-US)
* Utilisation de Service Workers (en-US)
Navigator.vibrate()
===================

La méthode **`Navigator.vibrate()`** active le module matériel de vibration de l'appareil, si ce dernier est présent. Si l'appareil ne supporte pas les vibrations, cette méthode n'a aucun effet. Si une série de vibration est déjà en cours, la précédente série est stopée et la nouvelle série est lancée.

Si la méthode ne peut pas vibrer en raison d'arguments invalides, elle retournera `false`, sinon elle retournera `true`. Si la série contient de trop longue vibration, elle sera tronqué; la longueur maximale dépend de l'implémentation.

Syntaxe
-------


```js
var successBool = window.navigator.vibrate(motif);
```


`motif`

Fournit un motif de vibration et d'intervalle de pause. Chaque valeur indique un nombre de milisecondes de vibration ou de pause, en alternance. Vous pouvez fournir une valeur (pour vibrer une fois) ou un tableau de valeur (vibration, pause, vibration ...). Voir l'API Vibration pour plus de détails.

Passer la valeur 0, un tableau vide, ou un tableau de zéro arrêtera toutes les vibrations.

Exemple
-------


```js
window.navigator.vibrate(200); // vibre pendant 200ms
window.navigator.vibrate([
  100, 30, 100, 30, 100, 30, 200, 30, 200, 30, 200, 30, 100, 30, 100, 30, 100,
]); // Vibre 'SOS' en Morse.
```

Spécifications
--------------

| Specification |
| --- |
| Vibration API (Second Edition) # dom-navigator-vibrate |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* Vibration API
Navigator.share
===============

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La méthode **`Navigator.share()`** invoque le mécanisme de partage natif de l'appareil. Celle-ci appartient à l'API Web Share. Si l'API Web Share n'est pas supportée, alors la méthode sera `undefined`.

Syntaxe
-------


```js
var sharePromise = window.navigator.share(data);
```

### Paramètres

*data*

Un objet contenant les données à partager. Au moins un des champs suivant doit être spécifié. Les champs possibles sont les suivant :

* `url`: Un `USVString` représentant l'URL à partager.
* `text`: Un `USVString` représentant le texte à partager.
* `title`: Un `USVString` représentant le titre à partager.

### Valeur retournée

Une `Promise` (en-US) qui sera résolue une fois que l'utilisateur aura finalisé son action de partage. Elle sera rejetée immédiatement si le paramètre *data* n'est pas correctement spécifié.

Par exemple, sur Chrome pour Android, la `Promise` retournée sera résolue après que l'utilisateur ait choisi une application vers où partager ses données.

Examples
--------


```js
navigator.share({
  title: document.title,
  text: "Hello World",
  url: "https://developer.mozilla.org",
}); // partage l'URL de MDN
```

Spécifications
--------------

| Specification |
| --- |
| Web Share API # share-method |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
Navigator.language
==================

La propriété en lecture seule **`Navigator.language`** renvoie une chaîne de caractères qui représente la langue préférée de l'utilisatrice ou de l'utilisateur. Il s'agit généralement de la langue utilisée pour l'interface utilisateur du navigateur.

Valeur
------

Une chaîne de caractères `DOMString`. Le format de cette chaîne de caractères est défini par la RFC 5646, aussi connu sous le nom de balise BCP 47. Voici quelques exemples de codes de langue valides : `"en"`, `"en-US"`, `"fr"`, `"fr-FR"`, `"es-ES"`, etc.

On notera que Safari pour iOS, avant la version 10.2, renvoyait le code du pays en minuscules : `"en-us"`, `"fr-fr"`, etc.

Exemples
--------


```js
if (/^en\b/.test(navigator.language)) {
  choisirLangue(window.navigator.language);
}
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-navigator-language-dev |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `navigator.languages`
* `navigator`
Navigator.onLine
================

La propriété en lecture seule **`Navigator.onLine`** est un booléen indiquant le statut de connectivité du navigateur. `true` indique que le navigateur accède au réseau et `false` indique que le navigateur est hors ligne. Cette propriété est mise à jour lorsque la connectivité réseau change. La mise à jour se produit lorsque la personne suit un lien ou qu'un script effectue une requête vers une page distante. Ainsi, la propriété peut renvoyer `false` lorsqu'une personne clique sur un lien après avoir perdu l'accès à Internet.

L'implémentation de cette propriété varie entre les navigateurs.

Pour Chrome et Safari, si le navigateur n'est pas en mesure de se connecter à un réseau local (LAN) ou à un routeur, il est hors ligne. Toutes les autres conditions renvoient `true`. Aussi, même si on peut prendre comme hypothèse que le navigateur est hors ligne lorsque la propriété a la valeur `false`, on ne peut pas présupposer que `true` implique que le navigateur accède à Internet. En effet, on pourrait avoir des faux positifs (par exemple dans le cas où le navigateur est exécuté au sein d'une machine virtuelle dont les adaptateurs réseau virtuels sont toujours connectés). Si on veut vérifier l'accès du navigateur à Internet, il faudra donc ajouter d'autres méthodes de contrôle.

Pour Firefox et Internet Explorer jusqu'à Firefox 41, il fallait passer le navigateur en mode hors ligne pour que la propriété soit `false`. Elle valait `true` sinon. Cela a été modifié dans Firefox ensuite pour correspondre au comportement de Chrome et Safari.

Il est possible de surveiller les changements relatifs à la connectivité réseau en écoutant les évènements `online` et `offline`.

Valeur
------

Un booléen.

Exemples
--------

### Utilisation simple

Pour vérifier que le réseau est accessible, on pourra utiliser `navigator.onLine`, comme dans cet exemple :


```js
if (navigator.onLine) {
  console.log("connecté");
} else {
  console.log("hors ligne");
}
```


Si le navigateur ne prend pas en charge `navigator.onLine`, l'exemple précédent tombera toujours dans le cas `false`/`undefined`.

### Surveiller les changements de connectivité

Pour gérer les changements liés à l'état du réseau, on pourra utiliser la méthode `addEventListener()` afin de créer des gestionnaires d'évènements pour `online` et `offline`, comme dans l'exemple qui suit :


```js
window.addEventListener("offline", function (e) {
  console.log("hors ligne");
});

window.addEventListener("online", function (e) {
  console.log("connecté");
});
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-navigator-online-dev |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
Navigator.doNotTrack
====================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

Renvoi le paramètre utilisateur de **do-not-track**. Cette valeur est "1" si l´utilisateur a demandé de ne pas être suivi par les sites web, le contenu ou la publicité.

Syntaxe
-------


```js
dnt = navigator.doNotTrack;
```


La valeur reflète celle de l'en-tête "do-not-track" *(ne pas suivre)*, c'est-à-dire {"1", "0", "unspecified" }. Note : Avant Gecko 32, Gecko a utilisé les valeurs { "yes", "no", "unspecified"} (bug 887703).

Exemple
-------


```js
dump(window.navigator.doNotTrack);
// écrit "1" si DNT est activé; "0" si l'utilisateur a opté pour le suivi; sinon c'est "unspecified" (non spécifié)
```

Spécifications
--------------

#### No specification found

No specification data found for `api.Navigator.doNotTrack`.  
Check for problems with this page or contribute a missing `spec_url` to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* Le guide pratique Do Not Track (en-US)
toString
========

### Résumé

Renvoie une chaîne de caractères représentant l'actuel objet `selection`, i.e. le texte sélectionné.

### Syntaxe


```js
string = sel.toString();
```


* `string` est la représentation sous la forme d'une chaîne de caractères de la sélection.
### Paramètres

Aucun.

### Description

Cette méthode renvoie le texte sélectionné.

En JavaScript, cette méthode est appelée automatiquement pour des objets `selection` aux fonctions nécessitant un paramètre `string` :


```js
alert(window.getSelection()); // Appel automatique
alert(window.getSelection().toString()); // Appel explicite
```

### Voir aussi

* Object.toString
Selection.collapse()
====================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La méthode **`Selection.collapse()`** positionne la sélection en cours en un seul point. Le document n'est pas modifié. Si le focus est sur le contenu et est modifiable, le curseur d'édition s'y positionnera et sera visible.

Syntaxe
-------


```js
sel.collapse(parentNode, offset);
```

### Paramètres

*`parentNode`*

Le curseur d'édition sera placé à l'intérieur de ce noeud.


*`offset`*

Indique la position du curseur d'édition dans `parentNode`.

Exemples
--------


```js
/\* Positionner le curseur au début de l'élément body d'un document HTML. \*/
var body = document.getElementsByTagName("body")[0];
window.getSelection().collapse(body, 0);
```

Spécifications
--------------

| Specification |
| --- |
| Selection API # dom-selection-collapse |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Selection`, l'interface à laquelle collapse appartient.