First, I define a default string.
var string = new String();
But I wanted to have a more powerful string, so I added some methods to the prototype of string.
String.prototype.md5sck
That’s good, but I hope he’s a new type.
var string2 = new String2();
string2.prototype.substring();//Method with inherit default string
string2.prototype.md5sck();//Have additional methods
string.prototype.md5sck();//null The system default string method will not be affected.
And I have to make sure my method can’t be modified by others
var string2 = new string2();
string2.prototype.md5sck = ???; // After new(), I hope this behavior will be prohibited
>Solution :
var string = new String();
String.prototype.md5sck = () => { console.log("md5 check") };
class String2 extends String {
// define here
}
var string2 = new String2();
string2.md5sck()