标签: parsefloat

如何舍入parseFloat导致Jquery/Javascript?

我如何从文本字段中舍入一个值并将parseFloat结果包含在内?此应用程序基本上总结了单击时所有单选按钮的值,并在文本框中显示总和.

如果单选按钮值是一个整数,则下面的代码可以正常工作,但是如果我想在单选按钮上有浮点值,则总值将具有100.0000000679应该的时间100.任何提示将非常感谢.提前致谢.

function calcscore(){
  var score = 0;
  $(".calc:checked").each(function(){
    score+=parseFloat($(this).val(),10);
  });
  $("input[name=openingsum]").val(score);
}
$().ready(function(){
    $(".calc").change(function(){
        calcscore();
    });
});
Run Code Online (Sandbox Code Playgroud)

HTML代码:

<input class="calc" name="v2" type="radio" onclick="ver2(this);" value="1.6666666666666666666666666666667" />Yes
<input class="calc" name="v2" type="radio" onclick="ver2(this);" value="0" />No
Run Code Online (Sandbox Code Playgroud)

javascript jquery rounding parsefloat parseint

9
推荐指数
1
解决办法
1万
查看次数

Parse Float有一个舍入限制?我怎样才能解决这个问题?

我建立了一个将紧凑数据字符串解析为JSON的系统.我使用19位数字来存储ID.不幸的是,任何大于17位的数字都会parseFloat()围绕最后几位数.

这会破坏整个数据字符串.我能解决这个问题吗?

例如8246295522085275215变成了8246295522085276000.为什么是这样?

http://jsfiddle.net/RobertWHurst/mhZ7Q/

javascript math parsefloat

8
推荐指数
1
解决办法
5539
查看次数

当使用parseFloat时,React onChange吞噬了我的小数

我有一个简单的onChange,它接受用户的输入pareses并设置要渲染的状态.这是代码.

import React, { Component } from 'react';
import './App.css';

class App extends Component {
  constructor() {
    super();
    this.state = {
      random: {
        foo: 0
      }
    }
  }

  onChange(e) {
    let random = this.state.random;
    random[e.target.name] = parseFloat(e.target.value);
    this.setState({random});
  }

  render() {
    return (
      <div className="App">
        <input onChange={this.onChange.bind(this)} type="text" name="foo" value={this.state.random.foo} />
      </div>
    );
  }
}

export default App;
Run Code Online (Sandbox Code Playgroud)

我不明白的是我的小数点在哪里.我知道没有任何验证可以阻止用户输入字母,但这只是一个示例应用来测试我遇到的这个问题.当我输入小数点时,不会被渲染.我哪里错了?

javascript parsefloat setstate reactjs

8
推荐指数
1
解决办法
1557
查看次数

将数字传递给parseFloat()而不是字符串

在我的代码中,特定var的值可以来自许多不同的json源中的任何一个.对于其中一些源,有关的json元素将是一个字符串(例如"temp": "10.2"),而对于其他源,json元素将已经是一个float(例如"temp": 10.2).

如果我只是将json元素(来自任何来源)传递给a parseFloat(),即使它已经是一个浮点数,它是否有任何伤害(任何可能破坏)?它似乎工作; 我只是在思考未来或不同平台上的好/坏做法和可能的破坏.

谢谢.

javascript json numbers parsefloat

7
推荐指数
1
解决办法
1080
查看次数

使用此方法将字符串转换为整数是否有任何副作用

如果我将字符串转换为如下的数字,是否有任何副作用..

var numb=str*1;
Run Code Online (Sandbox Code Playgroud)

如果我检查下面的代码,它说这是一个数字..

var str="123";
str=str*1;
if(!isNaN(str))
{
  alert('Hello');   
}
Run Code Online (Sandbox Code Playgroud)

如果使用此方法有任何疑虑,请告诉我.

javascript numbers parsefloat

6
推荐指数
1
解决办法
676
查看次数

测试字符串是否是JavaScript中的有效浮点数

我想测试一个字符串是否可以转换为float.我一直在尝试使用parseFloat来实现这一目标.

console.log(!isNaN(parseFloat("10000"))); // should return true
console.log(!isNaN(parseFloat("100T0"))); // should return false (but doesn't)
Run Code Online (Sandbox Code Playgroud)

事实证明,parseFloat只要碰到一个不是数字的字符就会停止读取字符串,然后返回它到目前为止所传递的任何字符.所以parseFloat("100T0")实际上是返回100而不是NaN.

什么是更好的js测试,看看一个字符串是否可以被转换为浮点数?

javascript string numbers nan parsefloat

6
推荐指数
2
解决办法
750
查看次数

Javascript不正确地倍增,导致不正确的舍入

当我拉出我想要乘以的值时,它们就是字符串.所以我拉它们,将它们解析为浮点数(以保留小数位),然后将它们相乘.

LineTaxRate = parseFloat(myRate) * parseFloat(myQuantity) * parseFloat(myTaxRateRound);
Run Code Online (Sandbox Code Playgroud)

这对99%的发票有效,但我发现了一个非常奇怪的问题.

当它乘以:78*7*0.0725

Javascript返回:39.584999999999994

当你通常在计算器中进行数学运算时:39.585

完成所有操作后,我会使用.toFixed(2)获取该数字并将其四舍五入.

因为Javascript正在返回该数字,所以它没有四舍五入到所需的值:$ 39.59

我尝试了Math.round()总数,但我仍然得到相同的数字.

我想过将数字四舍五入到小数点后三位,但这对我来说似乎很笨拙.

我到处搜索,我看到的是人们提到parseFloat失去了它的精度,并使用.toFixed,但是在上面的例子中,这没有帮助.

这是我为重新创建问题而制作的测试脚本:

<script>
var num1 = parseFloat("78");
var num2 = parseFloat("7");
var num3 = parseFloat("0.0725");
var myTotal = num1 * num2 * num3;
var result = Math.round(myTotal*100)/100

alert(myTotal);
alert(myTotal.toFixed(2));
alert(result);
</script>
Run Code Online (Sandbox Code Playgroud)

javascript math parsefloat

5
推荐指数
1
解决办法
7333
查看次数

Javascript parseFloat和nulls

我是javascript的新手,因为我目前在jQuery Mobile中创建一个跨平台的web应用程序,我已经使用了XML解析到HighCharts图的例子但是当我在我的系列数据中遇到null时它无法绘制任何一行并使它几乎成为一个散点图.

// push data points
$(series).find('data point').each(function(i, point) {
    seriesOptions.data.push( 
        parseFloat($(point).text())
    );
});
Run Code Online (Sandbox Code Playgroud)

我不知道如何编写一个if语句来检查它是否找到了null,如果是,如何告诉它使用它...任何人都可以帮助或指出我正确的方向,因为我喜欢我的图表到是正确的,而不是在我有一个零的位置放置零值.

javascript null parsing parsefloat highcharts

5
推荐指数
2
解决办法
1万
查看次数

orderBy数字角js

我有一系列的对象......

var userObjects =[
{userName: bob,
 age: "25",
 gender: "m"
},
{userName: bill,
 age: "15",
 gender: "m"
},
{userName: jen,
 age: "45",
 gender: "f"
},
]
Run Code Online (Sandbox Code Playgroud)

现在我在我的HTML中有一个ng-repeat来迭代这个对象数组.我希望它按年龄排序:

<tr ng-repeat="user in userObjects | orderBy:-age">
Run Code Online (Sandbox Code Playgroud)

在我的JS中,我将我的年龄转换为汉堡......

data.forEach(function(user){
   user.age= parseFloat(user.age);
}
Run Code Online (Sandbox Code Playgroud)

Angular不会按年龄排序,我希望看到......

bill, 15
bob, 25
jen, 45
Run Code Online (Sandbox Code Playgroud)

但相反,他们到处都是.我究竟做错了什么?

谢谢!

sql-order-by parsefloat angularjs angularjs-ng-repeat

5
推荐指数
3
解决办法
1万
查看次数

parseFloat方法没有给出正确的输出

这是一个示例程序:

var a = parseFloat("86.69043189999999") + "<br>";
var b = parseFloat("86.79718199999999") + "<br>";
var n = a + b;
document.getElementById("demo").innerHTML = n;
Run Code Online (Sandbox Code Playgroud)
<p id=demo></p>
Run Code Online (Sandbox Code Playgroud)

这两个变量都具有完全相同的小数点,它仍然提供两种不同的输出:

86.6904319
86.79718199999999
Run Code Online (Sandbox Code Playgroud)

为什么会出现如此奇怪的行为?

javascript parsefloat

5
推荐指数
0
解决办法
42
查看次数