包详细信息

@tikkhun/overload

tikkhun2ISC0.0.5

一种书写override函数较为优雅的方法

自述文件

overload

一种书写override函数较为优雅的方法

免责

本库仅用于学习交流,如有雷同,纯属巧合。

使用

详见 src

import { createOverLoad } from '../lib';
const func = createOverLoad({
  impls: [
    [
      'object',
      'object',
      (a: any, b: any) => {
        return Object.assign({}, a, b);
      },
    ],
  ],
});
func.addImpl('string', 'number', (a: string, b: number) => {
  return a + b;
});
func.addImpl('number', 'string', (a: number, b: string) => {
  return a + parseInt(b);
});
console.log(`func('1', 2);`, func('1', 2));
console.log(`func('1', 2);`, func(1, '2'));
console.log(`func({a:1}, {b:1});`, func({ a: 1 }, { b: 1 }));