javascript - javascript和lua计算结果不同

标签 javascript node.js math lua operators

我目前正在使用 NodeJS 创建自己的机器人,但遇到一个问题,即我的公式的计算方式与 Lua 中的计算方式不同

这是一个例子:

XP = 79878

math.floor((1/4+XP/125)^0.5-1/2)
Lua: returns 24
JavaScript: returns 639

如果有人知道如何使这个公式与 JavaScript 一起使用,请在下面提供一个示例。 谢谢。

最佳答案

Javascript 中的 ^ 运算符执行 XOR operation ,而不是将某物提升为幂。在最新版本的 Javascript 中(Node.js 8 似乎支持它,我不确定早期版本是否如此),您可以使用 ** 运算符代替;如果您需要支持早期版本,您应该使用 Math.pow()

// newer code
Math.floor((1/4 + XP/125) ** 0.5 - 1/2)

// older code
Math.floor(Math.pow(1/4 + XP/125, 0.5) - 1/2)

关于javascript - javascript和lua计算结果不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66329254/

相关文章:

javascript - 使用JSE(Selenium c#)设置值和文本的区别

c# - .Net 的好的统计数学包是什么?

c# - C#中另一种计算立方根的方法

javascript - 将结果推送到数组

javascript - 当js用Typescript调用scrollMaxY参数时我该如何处理?

javascript - Google Maps Javascript Api V3 data.remove 没有删除功能

c - fork 的可能组合数

node.js - 从非 Master 分支拉取 NPM 私有(private)模块

javascript - JSON 对象转换器到交互式 html

http - tcp 和 http 连接监听器是否可以相互交互?