Если они являются достаточно взрослыми, чтобы когда-либо заполнить налоговую форму, покажите им 1040EZ и объясните, что экземпляр класса похож на заполненную форму: каждый пробел является членской переменной объекта, и форма также включает инструкции для того, что сделать с членскими переменными, и те инструкции являются функциями членства объекта. Сам класс похож на основную копию формы, от которой можно распечатать от бесконечного количества незаполненных бланков для заполнения.
Одна вещь, которой я порекомендовал бы к , ИЗБЕГАЕТ в попытке связаться, понятие OO новым программистам использует только примеры, где объекты (в смысле OO) представляют реальные физические объекты. Это на самом деле сделает студентов [еще 113] перепутанный, когда они встретятся, объекты раньше представляли нефизические объекты (такие как цветовая схема, или большинство поведенческих моделей в "Шаблонах разработки") или объекты, используемые в качестве полезного пути к связанным с хранилищем функциям и связанным данным в том же месте (думают java.lang Java. Математика для примера.)
var reg = /e(.*?)e/g;
var result;
while((result = reg.exec(targetText)) !== null) {
doSomethingWith(result);
}
Попробуйте использовать match () в строке вместо exec (), хотя вы также можете выполнить цикл с помощью exec. Матч должен дать вам все совпадения за один раз. Я думаю, вы также можете опустить глобальный спецификатор.
reg = new RegExp(/e(.*?)e/);
var matches = targetText.match(reg);
targetText = "SomeT1extSomeT2extSomeT3extSomeT4extSomeT5extSomeT6ext"
reg = new RegExp(/e(.*?)e/g);
var result;
while (result = reg.exec(targetText))
{
...
}