翻译者:measureInputUsage() 方法
Translator
接口的 measureInputUsage()
方法用于报告给定文本输入通过翻译操作会使用多少输入配额。
语法
js
measureInputUsage(input)
measureInputUsage(input, options)
参数
input
-
一个字符串,表示您想要为其输入使用情况进行测量的输入文本。
options
可选-
一个对象,指定
measureInputUsage()
操作的配置选项。可能的值包括signal
-
一个
AbortSignal
对象实例,它允许通过关联的AbortController
中止measureInputUsage()
操作。
返回值
一个 Promise
,它会以一个数字兑现,该数字指定给定输入文本的 inputQuota
用量。
这个数字取决于实现;如果它小于 inputQuota
,则字符串可以被翻译。
异常
NotAllowedError
DOMException
-
如果
translator
Permissions-Policy
阻止了Translator
API 的使用,则抛出此错误。 NotReadableError
DOMException
-
如果用户代理过滤了输出翻译,例如因为检测到其有害、不准确或无意义,则抛出此错误。
UnknownError
DOMException
-
如果
measureInputUsage()
调用因任何其他原因失败,或用户代理不希望披露的原因而失败,则抛出此异常。
示例
检查配额是否足够
在下面的代码片段中,我们使用 create()
创建了一个新的 Translator
实例,然后通过 inputQuota
返回总输入配额,并通过 measureInputUsage()
返回翻译特定文本字符串的输入配额用量。
然后,我们测试该字符串的单个输入使用量是否大于总可用配额。如果是,则抛出相应的错误;如果不是,则使用 translate()
开始翻译字符串。
js
const translator = await Translator.create({
sourceLanguage: "en",
targetLanguage: "ja",
});
const totalInputQuota = translator.inputQuota;
const inputUsage = await translator.measureInputUsage(myTextString);
if (inputUsage > totalInputQuota) {
throw new Error("Insufficient quota to translate.");
} else {
console.log("Quota available to translate.");
const translation = await translator.translate(myTextString);
// ...
}
规范
规范 |
---|
翻译器和语言检测器 API # dom-translator-measureinputusage |
浏览器兼容性
加载中…