Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
The detect() method of the LanguageDetector interface detects the closest matching language or languages that a given text string is most likely to be written in.
detect(input) detect(input, options)
inputA string representing the text to have its language detected.
options OptionalAn object specifying configuration options for the detect() operation. Possible values include:
signalAn AbortSignal object instance, which allows the detect() operation to be aborted via the associated AbortController.
A Promise that fulfills with an array of objects representing the detected languages. Each object contains the following properties:
detectedLanguageA BCP 47 language tag representing the detected language.
confidenceA number between 0 and 1 representing the AI model's confidence that the detected language is correct.
The sum of all the returned confidence values should theoretically be 1, however, it may be lower because very low confidence values are excluded from the results.
The last array element returned will always have a detectedLanguage value of und — this is an abbreviation of "undetermined", and represents the probability that the text is not written in a language the model knows.
InvalidStateError DOMException
Thrown if the current Document is not active.
QuotaExceededErrorThrown if the language detection operation exceeds the available inputQuota.
detect() usageconst detector = await LanguageDetector.create({
expectedInputLanguages: ["en-US", "zh"],
});
const results = await detector.detect(myTextString);
results.forEach((result) => {
console.log(`${result.detectedLanguage}: ${result.confidence}`);
});
// Results in logs like this:
// la: 0.8359838724136353
// es: 0.017705978825688362
// sv: 0.012977192178368568
// en: 0.011148443445563316
// und: 0.0003214875760022551
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
detect |
138Availability may be subject to geographical restrictions. |
No | No | 122Availability may be subject to geographical restrictions. |
No | No | No | No | No | No | No | No |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/LanguageDetector/detect