基于商品价格和总价的 Javascript 计算器

标签 javascript ajax html calculator

我需要制作某种计算器来交易游戏中的某些元素,老实说,javascript 计算器最适合我,因为它可能可以随时随地计算。

但我真的不知道从哪里开始。

我需要计算游戏中的元素如果我为它们获得金币值多少钱。

比如有人给我168金,我给他元素,有 Helm ,背心, Boot ,手套等元素......

所以商品价格是这样的

Vest is 60 gold
Helmet is 45 gold

作为零钱

Tokens 25 gold
charms 7 gold

所以如果有人要给我168金他可以选择马甲或者 Helm 还有代币或者符咒作为零钱

So for 168 gold 

He gets 2 vest and 7 charms

And for example if he wants to exchange 325 gold in helmets he gets

7 helmets and 1 charm.

等等。

有没有人知道这有多复杂以及从哪里开始。

想一想,因为我是市场上的卖家,有人来找我,告诉我他有 100 美元,他可以买到多少巧克力。

最佳答案

首先了解 javascript is 是什么(和 what it isn't )。 (通过这句话,我最初指的是这个问题同时被标记为 Java 和 JavaScript)

恐怕您已经预料到有人会向您发布您可以复制和粘贴的完整代码。我会让你失望 - 这是一个知识站点,而不是编码机器。

虽然我不明白你到底想做什么(而且我怀疑有人明白),但我可以给你一些关于如何开始?事情阶段的提示。

我假设您已经阅读这里的 javascript 是什么:

为了让用户输入数字,创建 HTML 输入元素(在脚本之外):

<input type="text" id="UNIQUE_ID" value="" />
<button onclick="click()">Click when done!</button>
<script> ... put the code between script tags... </script>

我已经声明,无论何时 <button>单击 ("onclick") 函数 click()将被调用。让我们创建click() :

function click() {
    //We can get an "object" that represents the input field
    var field = document.getElementById("UNIQUE_ID");
    //We can get the value of said field
    var number = field.value;
    //We can empty the field now:
    field.value = "";
    //The number is now string (=text) We need a number. Multiplication forces conversion to number
    number = 1*number;
    //Check if the number is really a number
    if(isNaN(number))
        throw new Error("Input is not a number!");
    //Do some calculation - for example conversion to hex:
    var hexagonal = "0x"+(number).toString(16).toUpperCase();
    //Throw the number at the user - nasty but easy
    alert(number);

}

根据您要计算的内容,您可以修改我的函数。您还可以有更多字段和更多数字。

我注意到您可以用任何金额购买东西魅力不幸的是夏天很热,我的 Crystal 球过热了 - 所以我不能让它告诉我什么是魅力

但要找出您可以购买多少:

var gold = 666;
//D'oh an object!
var prices = {
  helmet: 150,
  armor: 430,
  ice_cream: 10,
  charm: 9
}
//Define what we want to buy
var wanted = "ice_cream";
//Prevent accessing undefined price
if(prices[wanted]==null)
  throw new Error("We don't have this thing in stock yet!");
//Divide the cash by the price to know the amount
var amount = Math.floor(gold/prices[wanted]);  
//And calculate spare cash - modulo calculates rest after division
var spare = gold%prices[wanted]
//Finally find out how many charms can be bought with the rest gold
var charms = Math.floor(spare/prices.charm);
//and let the user know
alert("With "+gold+" gold, you can buy "+amount+" "+wanted+"(s) and "+charms+" charms.");

您可以 run this code没有 HTML。

关于基于商品价格和总价的 Javascript 计算器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24371585/

相关文章:

ajax - 带有 GWT 应用程序的 HtmlUnit 返回不完整的页面

我的 ASP.NET CSS 上的 Jquery CSS 'Overlapping'

javascript - 将百分比添加到随机生成的数字

javascript - 即使 AJAX 调用返回值也会发生 formatAjax 错误

javascript - 尝试在indexedDB中存储文件时出现错误 "The object store currently does not support blob values"

javascript - 使用 Javascript 将文本从表单放入表格中,当我单击按钮时它会消失

javascript - 是否可以在关闭 JS 的情况下使 AJAX 站点可抓取并优雅地降级?

javascript - 为什么实际网站会在重定向到另一个网站之前显示?

html - Bootstrap 4 - 如何在不使用 nav 或 list-group 的情况下使 scrollspy 工作?

javascript - Chrome : Dynamically created &lt;style&gt; tag does not have content?