| Index: src/string.js
|
| diff --git a/src/string.js b/src/string.js
|
| index 0d5ed0fc4297c49b0f79917de5a9e6b6a2758c4d..5cd1c0cfb71fc2edbe62b91960af7e2708ce0c43 100644
|
| --- a/src/string.js
|
| +++ b/src/string.js
|
| @@ -706,7 +706,7 @@ function StringSubstring(start, end) {
|
| }
|
|
|
|
|
| -// This is not a part of ECMA-262.
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.1
|
| function StringSubstr(start, n) {
|
| CHECK_OBJECT_COERCIBLE(this, "String.prototype.substr");
|
|
|
| @@ -827,7 +827,7 @@ function StringFromCharCode(code) {
|
| }
|
|
|
|
|
| -// Helper function for very basic XSS protection.
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.2.1
|
| function HtmlEscape(str) {
|
| return TO_STRING_INLINE(str).replace(/</g, "<")
|
| .replace(/>/g, ">")
|
| @@ -836,69 +836,93 @@ function HtmlEscape(str) {
|
| }
|
|
|
|
|
| -// Compatibility support for KJS.
|
| -// Tested by mozilla/js/tests/js1_5/Regress/regress-276103.js.
|
| -function StringLink(s) {
|
| - return "<a href=\"" + HtmlEscape(s) + "\">" + this + "</a>";
|
| -}
|
| -
|
| -
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.2
|
| function StringAnchor(name) {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.anchor");
|
| return "<a name=\"" + HtmlEscape(name) + "\">" + this + "</a>";
|
| }
|
|
|
|
|
| -function StringFontcolor(color) {
|
| - return "<font color=\"" + HtmlEscape(color) + "\">" + this + "</font>";
|
| -}
|
| -
|
| -
|
| -function StringFontsize(size) {
|
| - return "<font size=\"" + HtmlEscape(size) + "\">" + this + "</font>";
|
| -}
|
| -
|
| -
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.3
|
| function StringBig() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.big");
|
| return "<big>" + this + "</big>";
|
| }
|
|
|
|
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.4
|
| function StringBlink() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.blink");
|
| return "<blink>" + this + "</blink>";
|
| }
|
|
|
|
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.5
|
| function StringBold() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.bold");
|
| return "<b>" + this + "</b>";
|
| }
|
|
|
|
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.6
|
| function StringFixed() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.fixed");
|
| return "<tt>" + this + "</tt>";
|
| }
|
|
|
|
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.7
|
| +function StringFontcolor(color) {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.fontcolor");
|
| + return "<font color=\"" + HtmlEscape(color) + "\">" + this + "</font>";
|
| +}
|
| +
|
| +
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.8
|
| +function StringFontsize(size) {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.fontsize");
|
| + return "<font size=\"" + HtmlEscape(size) + "\">" + this + "</font>";
|
| +}
|
| +
|
| +
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.9
|
| function StringItalics() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.italics");
|
| return "<i>" + this + "</i>";
|
| }
|
|
|
|
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.10
|
| +function StringLink(s) {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.link");
|
| + return "<a href=\"" + HtmlEscape(s) + "\">" + this + "</a>";
|
| +}
|
| +
|
| +
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.11
|
| function StringSmall() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.small");
|
| return "<small>" + this + "</small>";
|
| }
|
|
|
|
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.12
|
| function StringStrike() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.strike");
|
| return "<strike>" + this + "</strike>";
|
| }
|
|
|
|
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.13
|
| function StringSub() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.sub");
|
| return "<sub>" + this + "</sub>";
|
| }
|
|
|
|
|
| +// ES6 draft, revision 26 (2014-07-18), section B.2.3.14
|
| function StringSup() {
|
| + CHECK_OBJECT_COERCIBLE(this, "String.prototype.sup");
|
| return "<sup>" + this + "</sup>";
|
| }
|
|
|
|
|