LanguageDetector: create() static method

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The create() static method of the LanguageDetector interface creates a new LanguageDetector instance to detect languages.

Note: The create() method requires transient activation, that is, it must be invoked in response to a user action such as a mouse click or button press.

Syntax

js
LanguageDetector.create(options)

Parameters

options

An object specifying configuration options for the LanguageDetector. Possible values include:

expectedInputLanguages

An array of strings specifying the expected languages of the input text, which helps improve the accuracy of the language detection. These should be valid BCP 47 language tags (as specified in RFC 5646). Defaults to ["en"].

monitor Optional

A callback function with a CreateMonitor argument that enables monitoring download progress of the AI model.

signal Optional

An AbortSignal object instance, which allows the create() operation to be aborted via the associated AbortController.

Return value

A Promise that fulfills with a LanguageDetector object instance.

Exceptions

InvalidStateError DOMException

Thrown if the page's Document is not yet active.

NetworkError DOMException

Thrown if:

  • The network was not available to download the AI model.
  • The user has cancelled the AI model download.
NotAllowedError DOMException

Thrown if:

NotSupportedError DOMException

Thrown if:

  • The language tags specified in expectedInputLanguages are invalid, or not supported.
  • An AI model to support the specified expectedInputLanguages is not available.
OperationError DOMException

General-purpose exception thrown if LanguageDetector creation failed for any other reason.

Examples

Basic LanguageDetector creation

js
const detector = await LanguageDetector.create({
  expectedInputLanguages: ["en-US", "zh"],
});

Specifications

Specification
Translator and Language Detector APIs
# dom-languagedetector-create

Browser compatibility

See also