Convert decimal numbers to fixed precision of two decimal places for non-zero decimals

The goal is to achieve two decimal places excluding zeros

1.2234 => 1.22

0.2345 => 0.23

0.02345 => 0.023 (instead of 0.02)

0.0000002345 => 0.00000023 (instead of 0)

0.0000002346545645645646465465 => 0.00000023 (instead of 0)

0.002035 => 0.002 instead of 0)

I am looking to format numbers using toFixed(2) but only on decimals that are not zero. What is the correct way to do this?

Answer №1

It appears that the intention is to dynamically remove the last two digits from a number rather than fixing it to two decimal places.

Here is my suggested approach to achieve this:

 function eliminateLastDigits(number, amount = 2)
{
  const numberString = number.toString();
  if(numberString.indexOf('.') === -1) return number;
  let numberLength = numberString.length;
  for(; numberLength >= 0 && amount; numberLength--){
    if (numberString[numberLength] !== '0') amount--;
  }
  return +numberString.slice(0, numberLength);
}
let inputNumber = 0.003040;
console.log(eliminateLastDigits(inputNumber)) //0.03

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Rearrange JavaScript Object in a Custom Sequence

Looking to filter a JSON Object (Array of Arrays) with a specific order requirement: order: ['Hors','TTC','Total général', 'verger', ' Tra'] data = [[" Tra", "100 - 149 ch", "Total"] [" Tra", "150 - 199 ...

Adjust text dynamically using PHP

Hello everyone, I am currently working on a form where I would like to have a text displayed and calculate the price when a user selects an option from two dropdown menus. The first dropdown menu includes: <select id="recipient" name="recipient" tabin ...

How to use JavaScript to retrieve extensive data streams (exceeding 1GB) from the internet

I'm interested in finding out if there is a way to stream data directly from JavaScript to the browser's download manager. With WebRTC, I am able to stream large amounts of data (files over 1GB) from one browser to another. On the receiving end, ...

What is the most effective way to dynamically incorporate external input into a SlimerJS script?

Could use some assistance with SlimerJS. My current program requires intermittent input from stdin to proceed with the next task. The code below functions effectively when using PhantomJS+CasperJS for reading external input, but encounters difficulties wi ...

Rendering a lensflare effect with Three.js on the exterior

I am interested in discussing the THREE.js lensflare issue I am experiencing. It seems that when my camera fails to display the lensflare, it disappears entirely rather quickly. Is there a way to adjust settings or set an offset for my camera to prevent th ...

The React MUI Tab component triggers a re-render and clears the states of its child components

In our endeavor to create a Tab Page using React MUI, we aim for each Tab to contain a child component. While there are no issues when adding these child components individually to a page without tabs, problems arise when incorporating them within the Tab ...

Please be patient and allow the function to complete before moving forward

Currently, I am in the process of building my first nodejs/DynamoDB application and it involves working with JavaScript for the first time. My goal is to save a new record after scanning the table and using the results of the scan as a basis. After doing s ...

Passing image source from parent component to child component in Vue.js

I encountered an issue where I stored the image file name in a variable within the parent component and passed it to the child component using props. However, despite this setup, the child element is not displaying the image as expected. Here is the data ...

Performing an additional GET request using AngularJS

After successfully running the code snippet, I received the JSON output displayed below. My main focus now is on extracting the cars_url. What would be the most effective method to retrieve the URL (and what approach is recommended), and subsequently initi ...

ZK: maintaining session connectivity

When I need to redirect to a tel:**** link in ZK and then redirect the user to another page after the call, I encounter a problem. Every time I click on the link, ZK interprets it as leaving the browser, which results in my client session ending automatica ...

The access-control-allow-origin header is failing to receive updates

I need help figuring out how to manually set the Access-origin header. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge& ...

Can a print or echo statement in PHP return a number value instead of a string?

Is it possible for the output of a print or echo statement in PHP to be a numerical value, or is it always a string? For example: Here is a snippet of PHP code: <?php $num = 10; ?> And here is some JavaScript code: function isLarge(number) { ...

Using JavaScript or TypeScript to locate the key and add the value to an array

My dilemma involves an object structured as follows: [{ Date: 01/11/2022, Questionnaire: [ {Title: 'Rating', Ans: '5' }, {Title: 'Comment', Ans: 'Awesome' } ] }, { Date: 01/11/2022, Questionnaire ...

Utilizing Vue's v-for directive to manipulate data through custom looping

When I loop through my data using v-for, I find myself unsure of how to display the data with a custom looping method, such as using modulus. I aim to display the data in groups of three items, assigning a different class to every 3 items. The desired st ...

Encountered an import error when using "npm run build", but it runs successfully with "npm start"

My React app is running smoothly with npm start, but I encounter an error when trying to build it using npm run build. The error message I receive is: `Creating an optimized production build... Failed to compile. Attempted import error: './parseq-lan ...

Tips for transferring a Spring MVC controller variable to JavaScript

I am currently working on retrieving a variable for a JavaScript function from an object that is sent to the view by the controller. The object I am dealing with is called Bpmsn. https://i.sstatic.net/FxlAo.png Through the controller, I have injected th ...

Switch polygon setting during event on Vue Google Map

Looking for a way to change the stroke color of a polygon when hovering over it. Struggling to locate proper documentation on how to access the setOptions method from events. <GmapMap ref="google_map" :center="{ lat: 0, lng: -0 }"> ...

Selenium Tips: Ensuring RemoteDriver Remains Connected to the Active Browser Tab

Currently working on a unique Windows application that utilizes voice commands to control web browsers. I am trying to figure out the best approach when users add tabs and modify the selected tab as needed. Unfortunately, RemoteDriver only supports swi ...

Is Redux really the new trend in the world of action creators?

I am new to this. I'm a bit unsure, is it okay or silly to use the pattern below? import { createAction, handleActions } from "redux-actions"; const CHANGE_STATE = "appState/CHANGE_STATE"; export const changeState = createAction(CHANGE_STATE, (key, ...

Use a loop to assign numbers to elements in an array based on a specific condition using JavaScript

Hello, I'm in the process of creating a looping pattern based on the conditions of the array object key. If the 'o' contains 't', the index will start from the 'n' starting point in the object, otherwise, the numbering wi ...