history.search()
================

Recherche dans l'historique du navigateur les objets `history.HistoryItem` correspondant aux critères donnés.

C'est une fonction asynchrone qui renvoie une `Promise`.

Syntaxe
-------


```js
var searching = browser.history.search(
  query, // object
);
```

### Paramètres

`query`

Un objet qui indique ce qu'il faut rechercher dans l'historique du navigateur. Cet objet a les champs suivants :

`text`

`string`. Rechercher des éléments d'historique par URL et titre. La chaîne est divisée en termes de recherche distincts aux limites de l'espace. Chaque terme de recherche est insensible à la casse par rapport à l'URL et au titre de l'élément d'historique. L'élément d'historique sera renvoyé si tous les termes de recherche correspondent.

Par exemple, considérez cet article :

URL: `"http://example.org"`

Title: `"Example Domain"`
```

"http"              -> matches
"domain"            -> matches
"MAIN ample"        -> matches
"main tt"           -> matches
"main https"        -> does not match
```


Spécifiez une chaîne vide (`""`) pour récupérer tous les objets `history.HistoryItem` qui répondent à tous les autres critères.

`startTime` Facultatif

`number` ou `string` ou `object`. Une valeur indiquant une date et une heure. Cela peut être représenté par : un objet `Date`, une chaîne de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Si elle est fournie, cette option exclut les résultats dont `lastVisitTime` est antérieure à cette heure. Si elle est omise, la recherche est limitée aux dernières 24 heures.

`endTime` Facultatif

`number` ou `string` ou `object`. Une valeur indiquant une date et une heure. Cela peut être représenté par : un objet `Date`, une chaîne de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Si elle est fournie, cette option exclut les résultats dont `lastVisitTime` est postérieur à cette fois. Si elle est omise, toutes les entrées sont prises en compte à partir de l'heure de début.

`maxResults` Facultatif

`number`. Le nombre maximum de résultats à récupérer. La valeur par défaut est 100, avec une valeur minimale de 1. La fonction renvoie une erreur si vous lui transmettez une valeur `maxResults` inférieure à 1.


### Valeur retournée

Une `Promise` sera remplie avec un tableau d'objets de type `history.HistoryItem`, chacun décrivant un seul élément d'historique correspondant. Les articles sont triés dans l'ordre chronologique inverse.

Exemples
--------

Consigne l'URL et la dernière heure de visite pour tous les éléments d'historique visités au cours des dernières 24 heures :


```js
function onGot(historyItems) {
  for (item of historyItems) {
    console.log(item.url);
    console.log(new Date(item.lastVisitTime));
  }
}

var searching = browser.history.search({ text: "" });

searching.then(onGot);
```


Logs the URL and last visit time for all history items ever visited:


```js
function onGot(historyItems) {
  for (item of historyItems) {
    console.log(item.url);
    console.log(new Date(item.lastVisitTime));
  }
}

var searching = browser.history.search({
  text: "",
  startTime: 0,
});

searching.then(onGot);
```


Consigne l'URL et la dernière visite de la dernière visite sur une page contenant la chaîne "mozilla" :


```js
function onGot(historyItems) {
  for (item of historyItems) {
    console.log(item.url);
    console.log(new Date(item.lastVisitTime));
  }
}

var searching = browser.history.search({
  text: "mozilla",
  startTime: 0,
  maxResults: 1,
});

searching.then(onGot);
```

### Example extensions

* history-deleter
Compatibilité des navigateurs
-----------------------------

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

**Note :**

Cette API est basée sur l'API Chromium `chrome.history`. Cette documentation est dérivée de `history.json` dans le code de Chromium.

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.