问题标签 [units-of-measurement]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4855 浏览

.net - F# 测量单位如何工作?

有没有人有机会深入了解F# 度量单位的工作原理?它只是基于类型的诡计,还是隐藏在下面的 CLR 类型可以(可能)从其他 .net 语言中使用?它适用于任何数字单位,还是仅限于浮点值(这是所有示例使用的)?

0 投票
23 回答
5656 浏览

naming - 你在你的程序中使用“kibibyte”作为度量单位吗?

几十年来,在计算领域(磁盘制造商除外),1 KB(千字节)被理解为 1024 字节。在过去的几年里,出现了用 KiB(“kibibyte”)来表示 1024 字节的运动,将千字节的含义改为 1000 字节,注定了我们会陷入更多年的困惑。另一方面,该运动似乎仅限于 Gnome,以及一些过分热心的维基百科编辑

你会将你的程序转换为使用 KiB 吗?如果您曾经以 KB 显示文件大小,您是除以 1000 还是 1024?

0 投票
1 回答
246 浏览

algorithm - 如何选择显示值的单位?

我有一个值,我知道它的单位是

mn/md * kg kn/kd * s sn/sd * K Kn/Kd * A An/Ad

注:指数为有理数,m 0.5为单位有效

问题是如何选择如何将单位分解成更紧凑的东西

例如,如果

我可以使用 N/m

我怀疑这是离散优化问题的某个子集。

0 投票
5 回答
653 浏览

floating-point - 您将存储工程数据的计量单位是什么?

在我们的应用程序中,我们目前决定将所有工程数据存储在我们的 SI 数据库中。

我担心我们可能会冒在我们的数据库或 .NET 数字类型中没有足够精确度和准确性的风险。我还担心我们可能会看到浮点数学的伪像(尽管这可能是一个问题)。

例如,源数据可能是以 Psi(磅/平方英寸)表示的压力量(并从某些第 3 方服务中读取)。工程师会选择这种计量单位,因为(对于表示的数量)这将倾向于提供易于消化、人类可读的数字,而不需要科学记数法。

当我们“标准化”这个数字时,即当我们为了我们自己的持久性而转换这个数量时,我们可能会将它转换为 Pa(帕斯卡),这需要将这个数字乘以或除以某个其他可能很大的数字。

我们经常最终存储非常大或非常小的数字,更糟糕的是 - 我们可能会对这些数字进行进一步的计算。

目前我们使用ORACLE float 和System.Double。

人们对此有何看法?

更新

进一步的研究发现了即将推出的 F# 语言(在我写的 CTP 中)对度量单位的支持。

看来我们将能够让 F# 理解用户输入,例如:

我们还可以创建自己的派生单位和单位系统。

在 F# 中为牛顿创建派生单位
(来源:msdn.com

0 投票
14 回答
33820 浏览

c# - C# 中的度量单位 - 几乎

受到F# 中的度量单位的启发,尽管断言(在这里)你不能在 C# 中做到这一点,但前几天我有一个想法,我一直在玩。

示例用法:

下一步是尝试实现转换(片段):

(我本来希望避免使用静态实例化对象,但众所周知,您不能在接口中声明静态方法)然后您可以这样做:

显然,与 F# 度量单位相比,这有一个巨大的漏洞(我会让你算出来)。

哦,问题是:你怎么看这个?值得使用吗?其他人已经做得更好了吗?

对这个主题领域感兴趣的人的更新,这里是 1997 年的一篇论文的链接,讨论了一种不同的解决方案(不是专门针对 C#)

0 投票
2 回答
956 浏览

php - PHP中的自然语言单位转换?

我正在寻找一个可以从字符串中提取重量/高度数据的库(最好是 PHP)。

我希望我的用户输入诸如“我重 80 k,我身高 1.8m”甚至“220 lb”和“6' 1”之类的内容,并将其传递给可以提取数量和单位的函数。

有谁知道那里有类似的东西吗?

0 投票
4 回答
322 浏览

datetime - 在哪里进行转换 - 时区、计量单位等

应该在代码的哪里进行转换?客户端、服务器、业务还是数据库?

我们目前在我们的数据库中进行时区和计量单位的转换,性能正在扼杀我们,并希望移动逻辑。你认为最好的位置在哪里?

谢谢

0 投票
1 回答
1007 浏览

f# - 如何一般地删除 F# 度量单位

我有一些数据操作代码,最后会吐出 csv。

我开始升级它以在任何地方添加度量单位,但现在我的 csv 函数出现问题:

(参数为文件名、列数组、列标题、分隔符)

在我之前将 [|s;x;y|] 发送到 WriteCSV 的地方,我现在遇到了问题,因为我无法发送 [|skm; 毫米; 嗯|]。

我尝试编写一个用于一般删除度量单位的函数,但它不起作用。

我的问题是:

  • 为什么它不起作用?
  • 它可以工作吗?
  • 有没有另一种方法来解决这个特定的问题?
0 投票
1 回答
758 浏览

f# - F# 编译器错误 FS0030,值限制问题

我读过StrangeLights的简介,我读过 Expert F# 的文章(第 119 页),但我看不出它们如何应用于我的代码:

对于我的测试,我想检查浮点数之间的相等性,并有一点宽容。我正在将所有内容转换为度量单位,但我希望能够成为“通用”:

然后我可以使用它来检查不同“类型”浮点数的相等性,或者将其咖喱制作一个自定义的:

但我收到以下消息:

我看不出我还能做些什么来使它成为一个函数——我看不到任何隐式参数。

这是怎么回事?

0 投票
2 回答
898 浏览

f# - F# 测量单位 - '提升' 值浮动

从 csv 文件导入数字时,我需要将它们转换为带有单位的浮点数。

目前我使用内联函数执行此操作:

但我想知道是否有更优雅的方法来做到这一点 - 还是我必须创建自己的带有转换功能的“单位”模块?

像这样真的很好,但我怀疑这可能......

这与我之前的问题(如何普遍删除 F# 度量单位)相反。

更新:对于自制装置,我试过这个,效果很好:

或者,按照这个答案中的问题