6
有处理冲突的功能参数的模式吗?
我们有一个API函数,可根据给定的开始日期和结束日期将总金额细分为每月金额。 // JavaScript function convertToMonths(timePeriod) { // ... returns the given time period converted to months } function getPaymentBreakdown(total, startDate, endDate) { const numMonths = convertToMonths(endDate - startDate); return { numMonths, monthlyPayment: total / numMonths, }; } 最近,此API的消费者希望以其他方式指定日期范围:1)通过提供月数而不是结束日期,或2)通过提供每月付款并计算结束日期。为此,API小组将功能更改为以下内容: // JavaScript function addMonths(date, numMonths) { // ... returns a new date …
38
api-design