![](/img/trans.png)
[英]Regular Expression/Javascript: Convert Degrees Minutes Seconds to Decimal Degrees
[英]Javascript convert decimal power to regular decimal
我可以使用Javascript Math将十进制数(如100)转换为十进制幂数(如1e + 2)
Math.pow(10, 2)
但是,我该如何反过来呢? 如何将小数幂(例如1e + 2)转换为常规小数(例如100)? 我需要将其保存在数据库编号列中。 我找不到任何方法或jquery插件将为我做到这一点。
您在上面显示的表达式Math.pow(10, 2)
实际上计算为100
。
但是,如果给定字符串1e+2
,则可以通过调用parseFloat()
将其更改为100
:
var s = '1e+2', // This is a string in scientific notation. x = parseFloat(s); // Here we convert it to the more widespread notation. document.write('"'+s+'" -> '+x); // Let's print out the values for testing purposes.
您所说的是数字格式,而不是数字。
字符串"100"
是数字100
的文本表示形式。 字符串"1e+2"
是相同数字的文本表示形式,但采用科学格式。
数值没有任何特定格式。 此代码中变量a
, b
和c
中的值完全相同:
var a = 100;
var b = Math.pow(10, 2);
var c = 1e+2;
当您创建数字的文本表示形式时,数字值只会获得特定的格式。 我将上面示例中的变量编码为文本:
console.log(a);
console.log(b);
console.log(c);
由于这些值不会太小或太大而无法以常规十进制格式表示,因此它们是这样产生的:
100
100
100
当您要将数字值存储在数据库中时,数字的来源无关紧要,只使用数字值本身。
Math.pow(x, y)
实际上返回x ^ y的结果。 在您的特定情况下,它以科学计数法表示,但实际数字仍为100。如果您有字符串并想要获取实际数字,则可以使用:
Number("1e+2")
例
$("#result").append(Number("1e+2"));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="result"></div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.