Как называется такая конструкция /[0-9]{5}([- ]?[0-9]{4})?/?
Эта строка
var pattern = /[0-9]{5}([- ]?[0-9]{4})?/;
Весь код функции
function ZipCode(zip) {
zip = new String(zip);
var pattern = /[0-9]{5}([- ]?[0-9]{4})?/;
if (pattern.test(zip)) {
// значение почтового индекса должно быть первым совпадением в строке
this.value = zip.match(pattern)[0];
this.valueOf = function() {
return this.value
};
this.toString = function() {
return String(this.value)
};
} else {
throw new ZipCodeFormatException(zip);
}
}