求解let validators: {[s: string]: Vali.StringValidator;} = {};

初学typescript

namespace Validation {
    export interface StringValidator {
        isAcceptable(s: string): boolean;
    }
    const numberRegexp = /^[0-9]+$/;
    export class ZipCodeValidator implements StringValidator {
        isAcceptable(s: string) {
            return s.length === 5 && numberRegexp.test(s);
        }
    }
}
//这句什么意思
let validators: { [s: string]: Validation.StringValidator; } = {};
//这里的中括号什么意思?
validators["ZIP code"] = new Validation.ZipCodeValidator();
阅读 2.7k
1 个回答
let validators: { [s: string]: Validation.StringValidator; } = {};

指定变量validators是一个对象,它里面的属性名是字符串类型的,属性值是Validation.StringValidator类型。中括号用来指定属性名的类型。

推荐问题