使用JS OOP实现披萨成本计算程序,求开发思路指导
JS披萨成本计算程序开发思路提示
- 先在Pizza类内部定义两份固定的价格映射配置:一份对应不同尺寸、不同披萨类型的基础价格,另一份对应每种可添加额外配料的单价,两份配置都提前写好合法的枚举值,避免后续参数校验无据可依
- 给Pizza类新增一个私有实例属性,用于存储当前披萨已添加的有效额外配料列表,类型为数组即可
- 完善添加/移除配料的方法逻辑:
- 调用添加方法时,先校验传入的配料是否存在于预设的配料价格表中,不存在则抛出PizzaException;校验通过后再将该配料推入已添加列表,可自行选择支持重复添加同一种配料叠加费用,或是限制每种配料只能添加一次
- 调用移除方法时,先校验传入的配料是否存在于当前已添加列表中,不存在则抛出PizzaException;校验通过后再从列表中移除对应配料
- 编写获取总价方法的计算逻辑:先根据当前披萨的尺寸、类型查询基础价格表拿到基础费用,再遍历已添加配料列表,逐一查询配料价格表拿到对应单价累加得到配料总费用,最终总费用为基础费用+配料总费用
- 补充构造函数的参数校验:创建Pizza实例时传入的尺寸、类型需要先校验是否存在于预设的基础价格表合法枚举中,不合法直接抛出PizzaException,避免后续计算无法拿到基础价格
内容的提问来源于stack exchange,提问作者user9909961
相关产品推荐
相关产品推荐

