Javascript 如何使用parseFloat(0.00)获取浮点

Javascript 如何使用parseFloat(0.00)获取浮点,javascript,jquery,Javascript,Jquery,我怎样才能得到0.00的浮动呢。我之所以需要0.00,是因为我要通过加法累加浮点值。因此从0.00开始。 我试过了 tmp为0.00,但总计为0。我怎样才能使总数达到0.00?我需要它作为一个浮子而不是一根绳子。 谢谢 parseFloat()不带toFixed()删除点后的零。因此,您需要再次添加toFixed() parseFloat()不带toFixed()删除点后的零。因此,您需要再次添加toFixed()。javascript中没有整数类型。只有数字,存储为双精度浮点。因此,要获得0.

我怎样才能得到0.00的浮动呢。我之所以需要0.00,是因为我要通过加法累加浮点值。因此从0.00开始。 我试过了

tmp为0.00,但总计为0。我怎样才能使总数达到0.00?我需要它作为一个浮子而不是一根绳子。 谢谢

parseFloat()
不带
toFixed()
删除点后的零。因此,您需要再次添加
toFixed()


parseFloat()
不带
toFixed()
删除点后的零。因此,您需要再次添加
toFixed()

javascript中没有整数类型。只有
数字
,存储为双精度浮点。因此,要获得0.00的浮点值,只需执行以下操作:

var tmp = 0;

javascript中没有整数类型。只有
数字
,存储为双精度浮点。因此,要获得0.00的浮点值,只需执行以下操作:

var tmp = 0;

您可以使用字符串
tmp
变量,然后在需要添加时使用:

tmp = (+tmp + 8).toFixed(2);

或者简单地编写一个函数来实现这一点,因为您需要多次这样做:

function strAdd( tmp, num ) {
    return (+tmp + num).toFixed(2);
}

您可以使用字符串
tmp
变量,然后在需要添加时使用:

tmp = (+tmp + 8).toFixed(2);

或者简单地编写一个函数来实现这一点,因为您需要多次这样做:

function strAdd( tmp, num ) {
    return (+tmp + num).toFixed(2);
}

您可以在Javascript中使用parseFloat函数

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
function myFunction() {
    var a = parseFloat("10") + "<br>";
    var b = parseFloat("10.00") + "<br>";
    var c = parseFloat("10.33") + "<br>";
    var d = parseFloat("34 45 66") + "<br>";
    var e = parseFloat("   60   ") + "<br>";
    var f = parseFloat("40 years") + "<br>";
    var g = parseFloat("He was 40") + "<br>";

    var n = a + b + c + d + e + f + g;
    document.getElementById("demo").innerHTML = n;
}
</script>
试试看

函数myFunction(){ var a=parseFloat(“10”)+“
”; var b=parseFloat(“10.00”)+“
”; var c=parseFloat(“10.33”)+“
”; var d=parseFloat(“34 45 66”)+“
”; var e=parseFloat(“60”)+“
”; var f=parseFloat(“40年”)+“
”; var g=parseFloat(“他当时40岁”)+“
”; var n=a+b+c+d+e+f+g; document.getElementById(“demo”).innerHTML=n; }
您可以在Javascript中使用parseFloat函数

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
function myFunction() {
    var a = parseFloat("10") + "<br>";
    var b = parseFloat("10.00") + "<br>";
    var c = parseFloat("10.33") + "<br>";
    var d = parseFloat("34 45 66") + "<br>";
    var e = parseFloat("   60   ") + "<br>";
    var f = parseFloat("40 years") + "<br>";
    var g = parseFloat("He was 40") + "<br>";

    var n = a + b + c + d + e + f + g;
    document.getElementById("demo").innerHTML = n;
}
</script>
试试看

函数myFunction(){ var a=parseFloat(“10”)+“
”; var b=parseFloat(“10.00”)+“
”; var c=parseFloat(“10.33”)+“
”; var d=parseFloat(“34 45 66”)+“
”; var e=parseFloat(“60”)+“
”; var f=parseFloat(“40年”)+“
”; var g=parseFloat(“他当时40岁”)+“
”; var n=a+b+c+d+e+f+g; document.getElementById(“demo”).innerHTML=n; }
这里有一个动态floatParser,供有需要的人使用

function customParseFloat(number){
  if(isNaN(parseFloat(number)) === false){
    let toFixedLength = 0;
    let str = String(number);

    // You may add/remove seperator according to your needs
    [".", ","].forEach(seperator=>{
      let arr = str.split(seperator);
      if( arr.length === 2 ){
        toFixedLength = arr[1].length;
      }
    })

    return parseFloat(str).toFixed(toFixedLength);
  }

  return number; // Not a number, so you may throw exception or return number itself
}

下面是为需要的人提供的动态floatParser

function customParseFloat(number){
  if(isNaN(parseFloat(number)) === false){
    let toFixedLength = 0;
    let str = String(number);

    // You may add/remove seperator according to your needs
    [".", ","].forEach(seperator=>{
      let arr = str.split(seperator);
      if( arr.length === 2 ){
        toFixedLength = arr[1].length;
      }
    })

    return parseFloat(str).toFixed(toFixedLength);
  }

  return number; // Not a number, so you may throw exception or return number itself
}

JS实际上没有“float”或“int”类型。他们都是这种类型的。当您显示
.00
时,它恰好会将其剥离。请看,这毫无意义——实数在小数点后永远不会只有零。将没有小数的值显示为
.00
纯粹是格式问题。JS实际上没有“float”或“int”类型。他们都是这种类型的。当您显示
.00
时,它恰好会将其剥离。请看,这毫无意义——实数在小数点后永远不会只有零。将一个没有小数的值显示为
.00
纯粹是一个格式问题。我首先尝试了这个方法,但是当我将58.10添加到它时,它显示为58.1,而不是58.10,这正是我想要的。我想保留小数点的原因是,我正在检查总数是否为100.00。不保留两个位置可能会给我99。99@Mary:然后在显示值时,需要使用
.toFixed(2)
(或某种舍入)。在JavaScript内部,您不能更改它的存储方式。@Mary:在JavaScript中数字不是这样工作的。它总是尽可能多地保留位置。当小数点后有尾随的零时,它们将被禁止显示,但它是相同的数字。我首先尝试了这个方法,但是当我将58.10添加到它时,它显示为58.1,而不是58.10,这是我想要的。我想保留小数点的原因是,我正在检查总数是否为100.00。不保留两个位置可能会给我99。99@Mary:然后在显示值时,需要使用
.toFixed(2)
(或某种舍入)。在JavaScript内部,您不能更改它的存储方式。@Mary:在JavaScript中数字不是这样工作的。它总是尽可能多地保留位置。当小数点后有尾随的零时,它们将被禁止显示,但它是相同的数字。