Я разрабатываю флэш-память (Flash 9, AS3) для подключения к серверу и отправки / получения / анализа данных в чате на JavaScript / HTML.
У меня есть такая структура:
package {
public class myClass {
String.prototype.escapeHtml = function() {
var str = this.replace(/&/g, "&");
str = str.replace(/</g, "<");
str = str.replace(/>/g, ">");
return str;
}
function writeToBrowser(str:String) {
ExternalInterface.call("textWrite",str.escapeHtml());
}
}
}
Когда я его компилирую, я получаю эту ошибку:
1061: вызов возможно неопределенного
метод escapeHtml через ссылку
со статическим типом String.
Если я уберу :String
, все будет работать нормально, но тогда мне придется проверить, является ли str
строкой, и не определено ли оно и т. Д.
У меня в коде много подобных функций, многие из них получают введенные пользователем данные, поэтому я думаю, что удаление :String
и выполнение множества проверок для каждой функции не лучший подход.
Как я могу сделать это правильно?