TextDecoder#

TextDecoder.encoding#

Właściwość encoding zwraca nazwęz kodowaniaTD skojarzonego z danym dekoderem tekstowym uprzednio przekonwertowaną na małe znaki ASCII. Właściwość jest tylko do odczytu.

Opis działania#

Samo wywołanie i poszczególne jego części najlepiej objaśnić na zapisie składniowym:

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
var encoding_name = textDecoder.encoding;

gdzie poszczególne człony oznaczają:

Kodowanie jest ustalane przy tworzeniu dekodera tekstowego w oparciu o wartość pierwszego argumentu przekazanego do konstruktora new TextDecoder() i nie podlega zmianie. W razie potrzeby należałoby utworzyć nowy dekoder tekstowy z pożądanym kodowaniem.

Konwersja nazwy danego kodowania na małe znaki ASCII jest obligatoryjna dla wszystkich nowych poleceń zwracających informację o używanym kodowaniu.

Prosty przykład:

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
<!DOCTYPE html>
<html>

<head>

	<script>

		function createDecoder(label, options, variant){

			var info = document.getElementById("info");
			var passLabel;
			var passOptions;

			if (variant == 0){

				passLabel = "brak";
				passOptions = "brak";
				var new_decoder = new TextDecoder();

			}

			else if (variant == 1){

				passLabel = label;
				passOptions = "brak";
				var new_decoder = new TextDecoder(label);

			}

			else {

				passLabel = label;
				passOptions = JSON.stringify(options);
				var new_decoder = new TextDecoder(label, options);

			}

			info.innerHTML = "Interfejs dekodera tekstowego: " + new_decoder
					+ "<br>" + "Pierwszy argument z konstruktora (łańcuch): " + passLabel
					+ "<br>" + "Drugi argument z konstruktora (obiekt): " + passOptions
					+ "<br>" + "Właściwość encoding: " + new_decoder.encoding
					+ "<br>" + "Właściwość fatal: " + new_decoder.fatal
					+ "<br>" + "Właściwość ignoreBOM: " + new_decoder.ignoreBOM;

		}

	</script>

</head>

<body>
	<p>Kliknij przycisk by utworzyć nowy obiekt TextDecoder.</p>
	<ul>
		<li>
			<div>Prawidłowe wartości dla kodowania UTF-8:</div>
			<input type="button" value="new TextDecoder()" onclick="createDecoder('', '', 0)">
			<input type="button" value="new TextDecoder('utf8')" onclick="createDecoder('utf8', '', 1)">
			<input type="button" value="new TextEncoder('UTF8')" onclick="createDecoder('UTF8', '', 1)">
			<input type="button" value="new TextEncoder('utf-8', {})" onclick="createDecoder('utf-8', {}, 2)">
			<input type="button" value="new TextEncoder('UtF-8', {fatal:true})" onclick="createDecoder('UtF-8', {fatal:true}, 2)">
			<input type="button" value="new TextEncoder('unicode-1-1-utf-8', {ignoreBOM:true})" onclick="createDecoder('unicode-1-1-utf-8', {ignoreBOM:true}, 2)">
			<input type="button" value="new TextEncoder('uNiCoDe-1-1-UTF-8', {fatal:false; ignoreBOM:false})" onclick="createDecoder('uNiCoDe-1-1-UTF-8', {fatal:false, ignoreBOM:false}, 2)">
		</li>
		<li>
			<div>Prawidłowe wartości dla kodowania IBM866:</div>
			<input type="button" value="new TextDecoder('866')" onclick="createDecoder('866', '', 1)">
			<input type="button" value="new TextEncoder('cp866')" onclick="createDecoder('cp866', '', 1)">
			<input type="button" value="new TextEncoder('CP866', {})" onclick="createDecoder('CP866', {}, 2)">
			<input type="button" value="new TextEncoder('cSiBm866', {fatal:true})" onclick="createDecoder('cSiBm866', {fatal:true}, 2)">
			<input type="button" value="new TextEncoder('ibm866', {ignoreBOM:true})" onclick="createDecoder('ibm866', {ignoreBOM:true}, 2)">
			<input type="button" value="new TextEncoder('IbM866', {fatal:false; ignoreBOM:false})" onclick="createDecoder('IbM866', {fatal:false, ignoreBOM:false}, 2)">
		</li>
	</ul>

	<p style="color: blue;">Szczegółowe informacje dla nowego obiektu TextDecoder:</p>
	<p id="info"></p>
</body>

</html>

Składnia Web IDL#

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
[Exposed=Window,Worker]
interface TextDecoder {
	readonly attribute DOMString encoding;
};

Specyfikacje i inne materiały#

Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

TextDecoder (H1) TextDecoder.encoding (H2) Opis działania (H3) Składnia Web IDL (H3) Specyfikacje i inne materiały (H3)