atan2 函数在 javascript 和 Excellsheet 中的行为不同
Posted
技术标签:
【中文标题】atan2 函数在 javascript 和 Excellsheet 中的行为不同【英文标题】:atan2 function behaves different in javascript and excellsheet 【发布时间】:2012-05-23 10:25:00 【问题描述】:我正在尝试 atan2 数学函数,但我在 google excel 表中得到了错误的值。但在 javascript atan2 函数中获得正确的值。如何在 excelsheet 中获得该值?
我在excel中的值是
atan2(8.6,2.7699)=0.3115
在 javascript 中是
atan2(8.6,2.7699)=1.259206466337312
我在这里检查了 javascript 值 http://www.univie.ac.at/moe/rechner/rechner.html
谁能说出为什么会这样?
如果我想在 excel 中使用这个值,那么我应该使用什么公式?
【问题讨论】:
【参考方案1】:在 Microsoft Excel 中,atan2 函数以相反的顺序获取参数,而 Google Docs 为保持一致性而做同样的事情。如果你翻转 javascript 中的参数,你会得到相同的“错误”值。
【讨论】:
【参考方案2】:atan2 在 Excel 中的函数签名是 ATAN2(x_num, y_num),而在 Javascript 中是 Math.atan2(y,x)。注意参数的顺序。
如果您以适当的顺序提供参数,他们应该都会给出大致相同的答案。
【讨论】:
【参考方案3】:Excel 的 ATAN2
需要 x
坐标,后跟 y
坐标 ATAN2(x,y)
但 JavaScript ATAN2
的参数颠倒了:ATAN2(y,x)
【讨论】:
以上是关于atan2 函数在 javascript 和 Excellsheet 中的行为不同的主要内容,如果未能解决你的问题,请参考以下文章