1.发现使用频率较高但尚未被定义的函数;
2.找到和验证函数的基础算法;
3.定义函数的变量;
4.考虑特殊和极端情况下的结果;
5.以代码形式呈现;
6.通过测试用例测试有效性;
7.提交文档.
下面以阶乘n!为例
1.发现没有现成的阶乘函数
2.算法: n! = n*(n-1)*(n-2).....*1
3.定义函数变量为n
4.当n 为 0 或1 时 n! = 1
5.在xlsx-calc/formulajs/lib/financial.js目录下,以代码实现(
exports.factorial = function (n){
if(n <= 1) {
return 1;
}
else{
return n * factorial(n-1);
}
}
6.在xlsx-calc/tests/test.js目录下建立测试用例,测试成功.
var formulajs = require('../formulajs/index');
var XLSX_CALC = require('../index');
var assert = require('assert');
describe('formulajs integration', function() { describe('XLSX_CALC.import_functions()', function() {
it('FACTORIAL', function() {
XLSX_CALC.import_functions(formulajs);
var workbook = {};
workbook.Sheets = {};
workbook.Sheets.Sheet1 = {};
workbook.Sheets.Sheet1.C835 = {v: 10};
workbook.Sheets.Sheet1.H845 = {f: '=FACTORIAL(C835)'};
XLSX_CALC(workbook);
console.log(workbook.Sheets.Sheet1.H845.v);
assert.equal(workbook.Sheets.Sheet1.H845.v, 3628800);
});
});
});