File tree Expand file tree Collapse file tree 3 files changed +43
-1
lines changed Expand file tree Collapse file tree 3 files changed +43
-1
lines changed Original file line number Diff line number Diff line change 1
1
# dependencies
2
2
/node_modules
3
3
/temp
4
- /Maths
5
4
# misc
6
5
.DS_Store
7
6
.env.local
Original file line number Diff line number Diff line change
1
+ /**
2
+ * A function to get absolute value of a given number
3
+ * @param {number } num - The input integer
4
+ * @return {number } Absolute vlaue of `num`
5
+ * @example abs(-10) => 10 | abs(50) => 50 | abs(0) => 0
6
+ * @see https://en.wikipedia.org/wiki/Absolute_value
7
+ * @author Owais28 <https://github.com/Owais28>
8
+ */
9
+
10
+ export const abs = ( num : number ) : number => {
11
+ const validNumber : number = + num ; // converted to number, also can use - Number(num)
12
+
13
+ if ( Number . isNaN ( validNumber ) ) {
14
+ throw new TypeError ( "Argument is NaN - Not a Number" ) ;
15
+ }
16
+
17
+ return validNumber < 0 ? - validNumber : validNumber ; // if number is less then zero mean negative then it converted to positive. i.e -> n = -2 = -(-2) = 2
18
+ } ;
Original file line number Diff line number Diff line change
1
+ import { abs } from '../Abs'
2
+
3
+ describe ( 'Testing abs function' , ( ) => {
4
+
5
+
6
+ it ( 'should return an absolute value of a negative number' , ( ) => {
7
+ const absOfNegativeNumber = abs ( - 34 )
8
+ expect ( absOfNegativeNumber ) . toBe ( 34 )
9
+ } )
10
+
11
+ it ( 'should return an absolute value of a positive number' , ( ) => {
12
+ const absOfPositiveNumber = abs ( 50 )
13
+ expect ( absOfPositiveNumber ) . toBe ( 50 )
14
+ } )
15
+
16
+ it ( 'should return an absolute value of a zero number' , ( ) => {
17
+ const absOfPositiveNumber = abs ( 0 )
18
+ expect ( absOfPositiveNumber ) . toBe ( 0 )
19
+ } )
20
+
21
+ it ( 'should return an absolute value of any floating number' , ( ) => {
22
+ const absOfPositiveNumber = abs ( - 20.2034 )
23
+ expect ( absOfPositiveNumber ) . toBe ( 20.2034 )
24
+ } )
25
+ } )
You can’t perform that action at this time.
0 commit comments