Javascript JS表单计算器

Javascript JS表单计算器,javascript,forms,calculator,Javascript,Forms,Calculator,我把这个简单的计算器作为我在JS中的第一个项目。我参加了一个课程,他们告诉我,程序员是“懒惰的”,所以他们试图写尽可能少的代码。我的问题来了。我认为我的计算器的代码太长了。我想知道,是否有任何方法可以用更少的代码来完成这个任务。感谢您抽出时间,祝您度过愉快的一天:) 函数结果(){ var amount=parseInt(document.getElementById(“number”).value); var size=document.getElementById(“velikost”).v

我把这个简单的计算器作为我在JS中的第一个项目。我参加了一个课程,他们告诉我,程序员是“懒惰的”,所以他们试图写尽可能少的代码。我的问题来了。我认为我的计算器的代码太长了。我想知道,是否有任何方法可以用更少的代码来完成这个任务。感谢您抽出时间,祝您度过愉快的一天:)

函数结果(){
var amount=parseInt(document.getElementById(“number”).value);
var size=document.getElementById(“velikost”).value;
var color=document.getElementById(“barva”).value;
var价格;
如果(金额19)&(金额49)&(金额99)&(金额499)&(金额999)){
如果((大小==1)和&(颜色==1)){
价格=1
}
如果((尺寸=1)和&(颜色=2)){
价格=1.5
}
如果((尺寸=1)和&(颜色=3)){
价格=2.9
}
如果((大小==1)和&(颜色==4)){
价格=3.9
}
如果((大小==2)和&(颜色==1)){
价格=2.2
}
如果((尺寸=2)和&(颜色=2)){
价格=2.9
}
如果((尺寸=2)和&(颜色=3)){
价格=4.9
}
如果((尺寸=2)和&(颜色=4)){
价格=5.9
}
}
document.getElementById(“vysledek”).innerHTML=金额*价格;
}  

您可以创建这样的对象。 仅展示用例的小示例:

const amountLt19 = {
  size: {
    1: {
      color: {
        1: 2.5,
        2: 3,
        3: 9.9
      }
    }
  }
}

const objSize = amountLt19[size];
const price = objSize && objSize[color]

如果代码工作,你实际上应该考虑询问代码复查:你可以用很多方法来编码。您正在混合逻辑(vysledek=amount*price)和价格配置。你应该为每种尺寸/颜色/数量创建某种应用程序配置,并提供价格,然后使用它通过你的逻辑返回结果。我投票结束这个问题,因为代码有效,只需要优化。最好是在CodeReview上提问。