我一直在使用Decimal.js来提高我的函数的精度,该函数通过反复尝试计算a = tan(a)的正根。它工作,但它返回一个“精度限制超过”错误的nTan(504) (将返回4.4934.达到505位数)或更高。
var Decimal = require("decimal.js");
var fs = require("fs");
function nTan (acc, m) {
var test = [1], acc = (parseInt(acc) || 15) + 1;
Decimal.set({precision: acc});
当我尝试将从php传入的bigint转换为nodejs中的整数时,结果总是不同的,我找不出它有什么问题。
> var a = parseInt('135601920000000040', 10);
undefined
> a
135601920000000030
> var a = parseFloat('135601920000000040');
undefined
> a
135601920000000030
> var n = Number('135601920000000040');
undefined
&g
我尝试用JS编写Gauss-Legendre算法。我找到了here算法。 这是我写的代码: let ao = 1;
let bo = 1 / Math.sqrt(2);
let to = 1 / 4;
let po = 1;
let an;
let bn;
let tn;
let pn;
let pi;
for (let i = 0; i < 10; i++) {
an = (ao + bo) / 2;
bn = Math.sqrt(ao * bo);
tn = to - po * Math.pow(ao - an, 2);
我试着用Node.js做这个计算。
let x = 841251657
console.log((x*x)-x)
我得到了:707704349563994000打印出来的。
当我使用朱莉娅时,我得到了同样的计算的707704350405245649。我有谷歌计算器的7.0770435e+17。
显然,这里出了点问题。
我该怎么做才能得到正确的答案?
大家好,我正在处理关于javascript天文计算的文件,所以我需要更高的精度。我对每一行都有很多操作,我希望结果更精确(逗号后面的小数点也是10或20)。
在JavaScript中,如果我不声明十进制数(例如使用.ToFixed(n)),那么在计算过程中,语言在逗号之后有多少位置?
例如:
var a= 1.123456789*3.5; // result 3.9320987615
var b= a/0.321;
var c= b*a;
// c => 48.16635722800571
这将是结果?就像对javascript的每个变量使用所有十进制后的逗号,近似吗?。
在其他问题中
所以在JS中,如果你这样做的话:
new Date().toISOString()
它会给你:
"2021-05-28T07:39:31.401Z"
但在PHP/Carbon (Laravel)中:
// I passed the same date from js result above
(new \Carbon\Carbon("2021-05-28T07:39:31.401Z"))->toISOString();
将返回:
"2021-05-28T07:39:31.401000Z"
在laravel/php的日期上,额外的30是
我想用任意精度的计算( A / B )的一些( C /D)根,用于根的十进制展开(例如,如果所需的精度是整数E,则结果应该包含根的小数点之后的E数字;E可能至少等于数万个;A、B、C、D是包含数万小数位数的整数),但我发现的所有Javascript数学库都拒绝处理这些数字。
我试着使用,但它的精度有限,输入的大小也有限。例如,如果我想用1025个有效数字计算2的平方根(最后一个数字可能以某种方式舍入),我对Decimal.js使用了以下代码:
Decimal.set({ precision: 1025 });
var r2 = Decimal.pow(2, Decimal.div(1, 2))
我使用sphinx通过nodejs运行以下查询集:
sphClient.SetGeoAnchor("latitude", "longitude", lat, long);
sphClient.SetFilterRange("@geodist",0,1000);
var res = sphClient.Query("@country country_name");
但是,当我运行此命令时,会出现以下错误:-
throw new assert.AssertionError({
^
AssertionError: "nu
我正在开发一个使用Node.js的回送框架开发的应用程序。我需要从csv读取数据并将其保存在我的SQL Server DB上(我使用的是SQL Server 2014实例)。csv文件的一列包含16位十进制数字。我可以从csv文件中读取它们,但当我将它们保存在数据库中时,它会更改最后的十进制数字。例如,csv的第一行的值是"0.0059888523696288“,但在DB上我发现是"0.0059888525865972”。
我在我的javascript代码中执行了一个console.log来检查数字,它们被正确地打印出来了,所以我猜这个问题是在DB读取数据时发生的。
这是在我的