summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author迷渡 <justjavac@gmail.com>2019-04-02 01:05:19 +0800
committerRyan Dahl <ry@tinyclouds.org>2019-04-01 13:05:19 -0400
commit659acadf77fdbeef8579a37839a464feb408437a (patch)
treeff0cae37151744de8777909d425fee05e3f24d7d
parentada5ffa610d2b5400b612917b35d91b98bee2309 (diff)
Improve new TextDecoder().toString() (#2032)
-rw-r--r--js/text_encoding.ts6
-rw-r--r--js/text_encoding_test.ts8
2 files changed, 14 insertions, 0 deletions
diff --git a/js/text_encoding.ts b/js/text_encoding.ts
index 364a0f020..a9d0d74b1 100644
--- a/js/text_encoding.ts
+++ b/js/text_encoding.ts
@@ -442,6 +442,9 @@ export class TextDecoder {
return codePointsToString(output);
}
+ get [Symbol.toStringTag]() {
+ return "TextDecoder";
+ }
}
export class TextEncoder {
@@ -467,4 +470,7 @@ export class TextEncoder {
return new Uint8Array(output);
}
+ get [Symbol.toStringTag]() {
+ return "TextEncoder";
+ }
}
diff --git a/js/text_encoding_test.ts b/js/text_encoding_test.ts
index 0799b1c3e..d33537b4f 100644
--- a/js/text_encoding_test.ts
+++ b/js/text_encoding_test.ts
@@ -91,3 +91,11 @@ test(function textDecoderSharedInt32Array() {
const actual = decoder.decode(i32);
assertEquals(actual, "ABCDEFGH");
});
+
+test(function toStringShouldBeWebCompatibility() {
+ const encoder = new TextEncoder();
+ assertEquals(encoder.toString(), "[object TextEncoder]");
+
+ const decoder = new TextDecoder();
+ assertEquals(decoder.toString(), "[object TextDecoder]");
+});