UNB/ CS/ David Bremner/ teaching/ cs2613/ books/ mdn/ Reference/ Global Objects/ Symbol/ Symbol.replace

The Symbol.replace static data property represents the well-known symbol @@replace. The String.prototype.replace method looks up this symbol on its first argument for the method that replaces substrings matched by the current object.

For more information, see RegExp.prototype[@@replace]() and String.prototype.replace.

Value

The well-known symbol @@replace.

Examples

Using Symbol.replace

class CustomReplacer {
  constructor(value) {
    this.value = value;
  }
  [Symbol.replace](string) {
    return string.replace(this.value, "#!@?");
  }
}

console.log("football".replace(new CustomReplacer("foo"))); // "#!@?tball"

Specifications

Browser compatibility

See also