これは実験的な機能です。本番で使用する前にブラウザー実装状況をチェックしてください。

TextDecoder インターフェイスは utf-8iso-8859-2koi8cp1261gbk など特定の文字エンコーディング方式向けのデコーダーを表します。デコーダーはバイトストリームを入力として受け取り、連続したコードポイントを出力します。よりスケーラブルな非ネイティブのライブラリーについて、StringView – typed array による、C ライクな文字列の表現をご覧ください。

let win1251decoder = new TextDecoder('windows-1251');
let bytes = new Uint8Array([207, 240, 232, 226, 229, 242, 44, 32, 236, 232, 240, 33]);
console.log(win1251decoder.decode(bytes)); // Привет, мир!

コンストラクター

TextDecoder()
新たに生成した TextDecoder を返します。これは、引数で指定したデコード方式を使用して連続したコードポイントを生成します。

プロパティ

TextDecoder インターフェイスは、どのプロパティも継承しません。

TextDecoder.encoding 読取専用
デコーダーの名称を持つ DOMString であり、これは TextDecoder が使用する方式を表す文字列です。
TextDecoder.fatal 読取専用
エラーモードが fatal であるかを示す Boolean です。
TextDecoder.ignoreBOM 読取専用
バイトオーダーマークが無視されたかを示す Boolean です。

メソッド

TextDecoder インターフェイスは、どのメソッドも継承しません。

TextDecoder.decode()
特定の TextDecoder オブジェクトの方式でデコードされたテキストを含む DOMString を返します。

仕様

仕様書 策定状況 コメント
Encoding
TextDecoder の定義
現行の標準 最初期の定義

ブラウザー実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung Internet
基本対応Chrome 完全対応 38Edge ? Firefox 完全対応 19
完全対応 19
部分対応 18
補足
補足 Implemented a slightly different version of the spec.
IE 未対応 なしOpera 完全対応 25Safari 完全対応 10.1WebView Android 完全対応 38Chrome Android 完全対応 38Edge Mobile ? Firefox Android 完全対応 19
完全対応 19
部分対応 18
補足
補足 Implemented a slightly different version of the spec.
Opera Android ? Safari iOS 未対応 なしSamsung Internet Android ?
Available in workersChrome 完全対応 38Edge ? Firefox 完全対応 20IE 未対応 なしOpera 完全対応 25Safari ? WebView Android 完全対応 38Chrome Android 完全対応 38Edge Mobile ? Firefox Android 完全対応 20Opera Android ? Safari iOS 未対応 なしSamsung Internet Android ?
TextDecoder() constructorChrome 完全対応 38Edge ? Firefox 完全対応 19
完全対応 19
部分対応 18
補足
補足 Implemented a slightly different version of the spec.
IE 未対応 なしOpera 完全対応 25Safari 完全対応 10.1WebView Android 完全対応 38Chrome Android 完全対応 38Edge Mobile ? Firefox Android 完全対応 19
完全対応 19
部分対応 18
補足
補足 Implemented a slightly different version of the spec.
Opera Android ? Safari iOS 未対応 なしSamsung Internet Android ?
decodeChrome 完全対応 38Edge ? Firefox 完全対応 19
完全対応 19
部分対応 18
補足
補足 Implemented a slightly different version of the spec.
IE 未対応 なしOpera 完全対応 25Safari 未対応 なしWebView Android 完全対応 38Chrome Android 完全対応 38Edge Mobile ? Firefox Android 完全対応 19
完全対応 19
部分対応 18
補足
補足 Implemented a slightly different version of the spec.
Opera Android ? Safari iOS 未対応 なしSamsung Internet Android ?
encodingChrome 完全対応 38Edge ? Firefox 完全対応 19
完全対応 19
部分対応 18
補足
補足 Implemented a slightly different version of the spec.
IE 未対応 なしOpera 完全対応 25Safari 未対応 なしWebView Android 完全対応 38Chrome Android 完全対応 38Edge Mobile ? Firefox Android 完全対応 19
完全対応 19
部分対応 18
補足
補足 Implemented a slightly different version of the spec.
Opera Android ? Safari iOS 未対応 なしSamsung Internet Android ?
fatalChrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?
ignoreBOMChrome ? Edge ? Firefox ? IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android ?

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。

関連情報

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

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