It seems you are replacing the whole prototype object with String with your object. I doubt it will even work, not to mention your intentions.
The prototype property is not writable, so assignments to this property silently fail (@ FrΓ©dΓ©ric Hamidi).
Using regular syntaxes works:
String.prototype.a = function() { alert('a'); }; var s = "s"; sa();
source share