在学习TypeScript过程中,遇到一点问题,先看下面的代码interfaceSquareConfig{color?:string;width?:number;}functioncreateSquare(config:SquareConfig):{color:string;area:number}{letnewSquare={color:"white",area:100};if(config.color){newSquare.color=config.color;}if(config.width){newSquare.area=config.width*config.width;}returnnewSquare;}createSquare({height:200,width:100});//报错/**之前提问写的,这里实际是错误的letparam={height:200}createSquare(param);//正确*///2月21日更正letparam={height:200,width:100};createSquare(param);//正确接口规定参数只能传color,width;而我传入了height,所以出错了。但是在TypeScript中文网额外的类型检查一节中,给出了代码中规避编译器报错的解决方法。我的困惑是,为什么这种方法能规避编译器类型检查?
波斯汪
相关分类