我这里有一些代码无效。我不知道我怎么能让它工作,一些帮助会很棒!
这是一个问题,所以你了解我从哪里开始编码。
问题:
使用面向对象的设计来设计一个名为PhoneBill的类,该类计算并打印在结算期间电话公司的每个客户所欠的余额。您的PhoneBill课程将接收客户的当前余额以及在结算周期内的phonce呼叫的总时间(以分钟为单位)。输入时间将被验证,呼叫成本将以每分钟25c的速度计算。您的课程是打印输入余额,电话通话时间,电话费和应付总金额。
一个。设计类表
湾为表中的每个操作编写一个算法。
℃。编写测试或驱动程序算法来测试解决方案
function PhoneBill()
{
this.bal;
this.min;
this.currCharge;
this.Totaldue;
this.currCharges=function()
{
this.currCharge=this.min*.25;
}
this.Totaldue=function()
{
this.Totaldue=this.bal+this.currCharge;
return (this.Totaldue);
}
this.bal=function()
{
return (this.bal);
}
this.min=function()
{
return (this.min);
}
}
me=new PhoneBill();
me.balance=eval(prompt("Enter Current Balance: "));
me.minutes=eval(prompt("Enter Minutes Used: "));
document.write("Current Balance = $"+me.balance+"<p>");
document.write("Minutes Used = "+me.minutes+"<p>");
document.write("Current Charges = $"+me.currCharges()+"<p>");
document.write("New Balance = $"+me.Totaldue()+"<p>");
错误即时:
当我运行它时,我输入Current Balance(10)Minutes used(10)
然后打印出来:
Current Balance = $10
Minutes Used = 10
Current Charges = $undefined
New Balance = $function() {return (this.bal); } NaN
我对这段代码做了什么,让它打印出来?
答案 0 :(得分:0)
那是因为你正在使用this.Totaldue来定义函数。在此功能中,您可以使用:this.Totaldue=this.bal+this.currCharge;
所以你需要做的是获取这些函数的返回值,而不是定义。
this.Totaldue=function()
{
return this.bal()+this.currCharge();
}
但是当我写这篇文章时哈哈。你不能让bal()en min()回归自己。这没有任何意义。
你想要的是属性this.bal = 'whatever';
和ex的函数定义。 this.getBal = function() { return this.bal; }
但是因为你只使用吸气剂,所以你可以立即获得物品:this.bal
。当你进入课堂本身时,你肯定不需要吸气剂和制定者。