diff --git a/.changeset/silver-cheetahs-jam.md b/.changeset/silver-cheetahs-jam.md new file mode 100644 index 0000000..8412c85 --- /dev/null +++ b/.changeset/silver-cheetahs-jam.md @@ -0,0 +1,5 @@ +--- +'@busyxiang/utilities-js': patch +--- + +Add number average util diff --git a/src/number.test.ts b/src/number.test.ts new file mode 100644 index 0000000..e4c84b5 --- /dev/null +++ b/src/number.test.ts @@ -0,0 +1,15 @@ +import { average } from './number'; + +describe('average', () => { + test('it should return average value', () => { + const aver = average(1, 2, 3); + + expect(aver).toBe(2); + }); + + test('it should return average value(spread array)', () => { + const aver = average(...[1, 2, 3]); + + expect(aver).toBe(2); + }); +}); diff --git a/src/number.ts b/src/number.ts new file mode 100644 index 0000000..9ab3048 --- /dev/null +++ b/src/number.ts @@ -0,0 +1,3 @@ +export const average = (...nums: number[]) => { + return nums.reduce((acc, value) => acc + value, 0) / nums.length; +};