Returns a PluginArray object, listing the Plugin objects describing the plugins installed in the application.

In Firefox 29 and later, enumeration of the navigator.plugins array may be restricted as a privacy measure. Applications that must check for the presence of a browser plugin should query navigator.plugins or navigator.mimeTypes by exact name instead of enumerating the navigator.plugins array and comparing every plugin's name. This privacy change does not disable any plugins; it just hides some plugin names from enumeration.


var plugins = navigator.plugins;

plugins is PluginArray object used to access Plugin objects either by name or as a list of items.

The returned value is not a JavaScript array, but has the length property and supports accessing individual items using bracket notation (plugins[2]), as well as via item(index) and namedItem("name") methods.


The following example function returns the version of the Shockwave Flash plugin.

function getFlashVersion() {
  var flash = navigator.plugins.namedItem('Shockwave Flash');
  if (typeof flash != 'object') {
    // flash is not present
    return undefined;
    return flash.version;
  } else {
    //No version property (e.g. in Chrome)
    return flash.description.replace(/Shockwave Flash /,"");

The following example displays information about the installed plugin(s).

var pluginsLength = navigator.plugins.length;

document.body.innerHTML = pluginsLength + " Plugin(s)<br>"
  + '<table id="pluginTable"><thead>'

var table = document.getElementById('pluginTable');

for(var i = 0; i < pluginsLength; i++) {
  let newRow = table.insertRow();
  newRow.insertCell().textContent = navigator.plugins[i].name;
  newRow.insertCell().textContent = navigator.plugins[i].filename;
  newRow.insertCell().textContent = navigator.plugins[i].description;
  newRow.insertCell().textContent = navigator.plugins[i].version?navigator.plugins[i].version:"";


The Plugin object exposes a small interface for getting information about the various plugins installed in your browser. A list of plugins is also available by entering about:plugins in the browser's Location bar.


Specification Status Comment
HTML Living Standard
The definition of 'NavigatorPlugins.plugins' in that specification.
Living Standard Initial definition.

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
pluginsChrome Full support YesEdge Full support ≤79Firefox ? IE ? Opera ? Safari ? WebView Android Full support YesChrome Android Full support YesFirefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android Full support Yes


Full support  
Full support
Compatibility unknown  
Compatibility unknown

In addition to listing each plugin as a pseudo-array by zero-indexed numeric properties, Firefox provides properties that are the plugin name directly on the PluginArray object.