指定したメッセージのローカライズされた文字列を取得します。

構文

browser.i18n.getMessage(
  messageName,  // 文字列
  substitutions // 任意
)

引数

messageName
文字列。messages.json で指定されたメッセージ名です。messages.json 内にメッセージを見つけられない場合は:
  • Firefox は "" を返し、エラーログを出力します。
  • Chrome は "" を返し、エラーログを出力しません。
substitutionsOptional
文字列 または 文字列配列。単一の置換文字列、または置換文字列の配列です。
Chrome では、9 個より多くの置換文字列を与えると、getMessage()undefined を返します。

戻り値

文字列。現在のロケール向けにローカライズされたメッセージ。

ブラウザーの実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxOperaAndroid 版 Firefox
基本対応Chrome 完全対応 17Edge 完全対応 14
補足
完全対応 14
補足
補足 Throws an exception instead returning an empty string if the message does not exist.
補足 Expects substitutions to be strings, while other browsers allow any value which is then converted to a string.
Firefox 完全対応 45
補足
完全対応 45
補足
補足 Firefox 47 and earlier returns "??" instead of "" if the message is not found in _locales, bug 1258199 changed this act to match Chrome, landed on Firefox 48.
Opera 完全対応 15Firefox Android 完全対応 48

凡例

完全対応  
完全対応
実装ノートを参照してください。
実装ノートを参照してください。

target.url を置換文字列として渡し、"messageContent" のローカライズされた文字列を取得します:

var message = browser.i18n.getMessage("messageContent", target.url);
console.log(message);

これは、_locales/en/messages.json ファイルに含まれた次の内容で動作します:

{
  "messageContent": {
    "message": "You clicked $URL$.",
    "description": "Tells the user which link they clicked.",
    "placeholders": {
      "url" : {
        "content" : "$1",
        "example" : "https://developer.mozilla.org"
      }
    }
  }
}

target.url が "https://developer.mozilla.org" である場合、"en" ロケールでのメッセージの値は次のようになります:

"You clicked https://developer.mozilla.org."

Example extensions

謝辞

この API は、Chromium の chrome.i18n API を基にしています。このドキュメンテーションは、Chromium コード内の i18n.json に由来しています。

Microsoft Edge 互換性データは、Microsoft Corporation より供給され、Creative Commons Attribution 3.0 United States License の下で含まれています。

ドキュメントのタグと貢献者

このページの貢献者: Marsf
最終更新者: Marsf,