Как это был бы хороший способ обработать это?
Я уже думал при удалении запятой и затем парсинге плавать.
Вы знаете лучший/более чистый путь?
Спасибо
Вы можете использовать метод замены строки, но не в одной строке, как это позволяет сделать regexp.
while(str.indexOf(',')!=-1)str= str.replace(',','');
parseFloat(str);
Или чтобы сделать одно выражение без regexp=
return parseFloat(str.split(',').join(''));
Я бы использовал regexp.
Основываясь на идее @kennebec, если вы хотите убедиться, что запятые указаны правильно и не хотите заменять запятые, вы можете попробовать что-то вроде этого:
function myParse(num) {
var n2 = num.split(",")
out = 0
for(var i = 0; i < n2.length; i++) {
out *= 1000;
out += parseFloat(n2[i])
}
return out
}
alert(myParse("1,432,85"));
// Returns 1432085, as the comma is misplaced.
Это может быть не так быстро, но вы хотели альтернативы :)