Translator:create() 靜態方法

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

Translator 介面的 create() 靜態方法建立一個新的 Translator 例項,該例項可用於翻譯文字。

注意: create() 方法需要 瞬時啟用,也就是說,它必須在響應使用者操作(如滑鼠點選或按鈕按下)時呼叫。

語法

js
Translator.create(options)

引數

options

一個指定 Translator 配置選項的物件。可能的值包括

sourceLanguage

一個指定待翻譯輸入文字的預期語言的字串,該字串應為一個有效的 BCP 47 語言標籤

targetLanguage

一個指定輸入文字將翻譯成的語言的字串,該字串應為一個有效的 BCP 47 語言標籤。

monitor 可選

一個帶有 CreateMonitor 引數的回撥函式,該函式允許監控 AI 模型的下載進度。

signal 可選

一個 AbortSignal 物件例項,允許透過關聯的 AbortController 中止 create() 操作。

返回值

一個 Promise,該 Promise 會以一個 Translator 物件例項 fulfilled。

異常

InvalidStateError DOMException

如果頁面的 Document 尚未啟用,則丟擲此異常。

NetworkError DOMException

在以下情況下丟擲

  • 網路不可用,無法下載 AI 模型。
  • 使用者已取消 AI 模型下載。
NotAllowedError DOMException

在以下情況下丟擲

NotSupportedError DOMException

在以下情況下丟擲

  • sourceLanguagetargetLanguage 中指定的語言標籤無效或不受支援。如果指定的 sourceLanguagetargetLanguage 相同,則會出現這種情況。
  • 不支援指定的 sourceLanguagetargetLanguage 組合的 AI 模型不可用。
OperationError DOMException

通用異常,在 Translator 建立因任何其他原因失敗時丟擲。

示例

基本的 Translator 建立

js
const translator = await Translator.create({
  sourceLanguage: "en",
  targetLanguage: "ja",
});

規範

規範
翻譯器和語言檢測器 API
# dom-translator-create

瀏覽器相容性

另見