重载

163 阅读1分钟

1.模仿css padding

可以传入1-4个参数 可以使用函数重载来强制执行和记录这些约束,你只需多次声明函数头即可。最后一个函数头是在函数体内实际处于活动状态但不可用于外部的那个

function padding (all: number);
function padding (topAndBottom: number,leftAndRight: number);
function padding(top: number,right:number,bottom:number,left:number);
function padding(top: number,rightAndLeft:number,bottom:number);
function padding(a:number,b?:number,c?:number,d?:number) {
  if(b === undefined && c === undefined && d === undefined) {
    b = c = d = a
  }else if(c === undefined && d === undefined) {
    c = a
    d = b
  }else if(d === undefined) {
    d = b
  }
  return {
    'padding-top':a,
    'pading-right': b,
    'pading-bottom': c,
    'pading-left': d
  }
}