function FactorialFunction() {
this.name = "FACTORIAL";
this.maxArgs = 1;
this.minArgs = 1;
}
FactorialFunction.prototype = new GcSpread.Sheets.Calc.Functions.Function();
FactorialFunction.prototype.evaluate = function (args) {
var result = 1;
if (args.length === 1 && !isNaN(parseInt(args[0]))) {
for (var i = 1; i < args[0]; i++) {
result = i * result;
}
return result;
}
return "#VALUE!";
}
var factorial = new FactorialFunction();
spread.addCustomFunction(factorial);
var functionDes = {
name:"FACTORIAL",
description: "The function returns the factorial of the cells value",
parameters:[{ name: "value" }]
};
spread.addCustomFunctionDescription(functionDes);
spread.removeCustomFunctionDescription("FACTORIAL");