我正在读一本关于可测试JS的书,并且有一章关于环复杂度,但它并没有真正说明如何计算它。它只是说圈复杂性路径计数
循环复杂度是衡量通过您的代码的独立路径的数量。
,并让这个例子说明它有圈的2复杂性:
function sum(a, b) {
if (typeof(a) !== typeof(b)) {
throw new Error("Cannot sum different types!");
} else {
return a + b;
}
}
因此,我不知道这是否由例子有3圈复杂度:
function madeup(a) {
if (typeof(a) === "string") {
if (a === "some") {
console.log("is a some");
} else {
console.log("not a some");
}
} else {
console.log("not a string");
}
}
而这4:
function madeup(a) {
if (typeof(a) === "string") {
if (a === "some") {
console.log("is a some");
} else {
console.log("not a some");
}
} else {
if (a === 5) {
console.log("is a 5");
} else {
console.log("not a 5");
}
}
}
?
正如你所说,你只是计算路径。你计算正确。 – AbcAeffchen