翻译者:measureInputUsage() 方法
Translator 接口的 measureInputUsage() 方法用于报告给定文本输入通过翻译操作会使用多少输入配额。
语法
js
measureInputUsage(input)
measureInputUsage(input, options)
参数
input-
一个字符串,表示您想要为其输入使用情况进行测量的输入文本。
options可选-
一个对象,指定
measureInputUsage()操作的配置选项。可能的值包括signal-
一个
AbortSignal对象实例,它允许通过关联的AbortController中止measureInputUsage()操作。
返回值
一个 Promise,它会以一个数字兑现,该数字指定给定输入文本的 inputQuota 用量。
这个数字取决于实现;如果它小于 inputQuota,则字符串可以被翻译。
异常
NotAllowedErrorDOMException-
如果
translatorPermissions-Policy阻止了TranslatorAPI 的使用,则抛出此错误。 NotReadableErrorDOMException-
如果用户代理过滤了输出翻译,例如因为检测到其有害、不准确或无意义,则抛出此错误。
UnknownErrorDOMException-
如果
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 |
浏览器兼容性
加载中…