Ich habe eine Frage über this
reserviertes Wort in JavaScript.Eine Frage zu "diesem" reservierten Wort in JavaScript
Check-out-Codes unter:
Function.prototype.method = function (name, func) {
if (!this.prototype[name]) {
this.prototype[name] = func;
}
};
String.method('deentityify', function() {
var entity = {
quot: '"',
lt: '<',
gt: '>'
};
return function() {
/*if (this === String.prototype) {
alert('true');
} else {
alert('false');
}*/
return this.replace(/&([^&;]+);/g,
function (a, b) {
var r = entity[b];
return typeof r === 'string' ? r : a;
}
);
};
}());
document.write('<">'.deentityify());
Sie können Codes oben bearbeiten: http://jsfiddle.net/G3Tkm/
Meine Frage ist:
Was die in Zeile this
reserviertes Wort ist 27 return this.replace(/&([^&;]+);/g,
ist?
Ich denke: this === String.prototype
, aber es ist nicht.
Der Typ '<">'
ist ein String und der Typ this
ist Objekt. Also this !== '<">'
Vielen Dank!