Как убрать 0 из 1.0 и 0.1 в JavaScript? - PullRequest
0 голосов
/ 04 июня 2018

Ниже приведены мои входные данные

let str1="1.0";
let str2="0.1";

Я ожидаю, что результат будет 1. и .1

Я пробовал эти способы ниже.Но не работает.

let str1="1.0";
let str2="0.1";

console.log(str1.replace(/^0+(?!\.|$)/, ''));//1.0
console.log(str2.replace(/^0+(?!\.|$)/, ''));//0.1
console.log(parseFloat(str1).toFixed(0));//1
console.log(parseFloat(str2).toFixed(0));//2

Ответы [ 2 ]

0 голосов
/ 04 июня 2018

это удалит все нули:

data.replace(/0/g, '');

Пример:

var data = ["1.0", "0.1", "1.1", "0.0"];
    
for(count = 0; count < data.length; count++){
 filtered = data[count].replace(/0/g, '');
 document.write(filtered + "<br>");
}

Результат:

1.
.1
1.1
.
0 голосов
/ 04 июня 2018

Если вас не волнует формат чисел, вы можете просто использовать это простое регулярное выражение, чтобы удалить все нули до или после десятичной точки:

/^0*|0*$/g

console.log("1.0".replace(/^0*|0*$/g, ""));
console.log("0.1".replace(/^0*|0*$/g, ""));

console.log("1.0000".replace(/^0*|0*$/g, ""));
console.log("0.0001".replace(/^0*|0*$/g, ""));

Вы можете, как вы сами заметили, позже просто использовать parseFloat(), чтобы вернуть числа позади строк

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...