fix(numberFilter): format large numbers  correctly

format large number to correct form instead of NAN.00 currently.
in previous code when first time we add the exponent with fractionSize
(number.toString()+'e'+fractionsize)
 and then convert it to an integer using ,
+(number.toString()+'e'+fractionsize)
when the number is very large and number will be represented by using exponent. for example 12345868059685210000 will be represented by 1.234586805968521e+21. as getting string in exponent is not handles, we get the number as NAN.
Handle when the number is being represented in exponent form, by adjusting exponent of number with fraction size:

Closes #8674
I was trying to write some additional test cases is when i found out that .. When we apply the number filter to  879832749374983274928 we get result 879,832,749,374,983,200,000.00 

Which is not a correct result since all the digits after 16 digits is being converted to zero, which is wrong.

This is happening because
*They are 64-bit floating point values, the largest exact integral value is 253, or 9007199254740992*
any number greater than this number will get the zeros after 16 digits and there by loose precision at the least.
this loose of precision is outside of the scope of number filter