Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The BarcodeDetector() constructor creates a new BarcodeDetector object which detects linear and two-dimensional barcodes in images.
new BarcodeDetector()
new BarcodeDetector(options)options OptionalAn options object containing a series of BarcodeFormats to search for in the subsequent detect() calls. The options are:
formats OptionalAn Array of barcode formats as strings. If not provided, detect() calls search for all supported formats. Limiting to specific formats is therefore recommended for performance reasons. To see a full list of supported formats see the supported barcode format.
TypeErrorThrown if the formats is specified and the parameter is empty or contains unknown.
This example creates a new barcode detector object, with specified supported formats and tests for browser compatibility.
// check compatibility
if (!("BarcodeDetector" in globalThis)) {
console.log("Barcode Detector is not supported by this browser.");
} else {
console.log("Barcode Detector supported!");
// create new detector
const barcodeDetector = new BarcodeDetector({
formats: ["code_39", "codabar", "ean_13"],
});
}