javascript - 从函数内的 if 语句调用函数

标签 javascript arrays function if-statement ecmascript-6

我有一个带有 if 语句的函数,无论是否为真,该函数都应该调用外部函数。我得到的结果是“未定义”。你能给我指出正确的方向吗?

函数一:

function printRange(rangeStart, rangeStop) {
    let summa = [];

    for (i = rangeStart; i <= rangeStop; i++) {
        summa.push(i);
    }
    let result2 = summa.join();
    return result2;
}

功能二:

function printRangeReversed(rangeStart, rangeStop) {
    let summa = [];

    for (i = rangeStart; i >= rangeStop; i--) {
        summa.push(i);
    }
    let result3 = summa.join();
    return result3;
}

功能三:

function printAnyRange(rangeStart, rangeStop) {

    if (rangeStart < rangeStop) {
        printRange(rangeStart, rangeStop);
    } else {
        printRangeReversed(rangeStart, rangeStop);
    }
    return;
}

调用函数:printAnyRange(21, 45);

正如我所说,这一切对我来说都是合乎逻辑的,但我想这不是因为我得到了“未定义”。

预期结果应为:"21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39, 40,41,42,43,44,45"

问候。

最佳答案

您没有返回任何东西。捕获函数的结果并返回该变量。

function printRange(rangeStart, rangeStop) {
    let summa = [];

    for (i = rangeStart; i <= rangeStop; i++) {
        summa.push(i);
    }
    let result2 = summa.join();
    return result2;
}

function printRangeReversed(rangeStart, rangeStop) {
    let summa = [];

    for (i = rangeStart; i >= rangeStop; i--) {
        summa.push(i);
    }
    let result3 = summa.join();
    return result3;
}

function printAnyRange(rangeStart, rangeStop) {
    let result = null;

    if (rangeStart < rangeStop) result = printRange(rangeStart, rangeStop);
    else result = printRangeReversed(rangeStart, rangeStop);
        
    return result;
}

console.log(printAnyRange(1,5));
console.log(printAnyRange(5,1));

关于javascript - 从函数内的 if 语句调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53329879/

相关文章:

sql-server-2005 - T-SQL标量函数中的错误处理

javascript - 将 &lt;textarea&gt; 值显示为 HTML

javascript - 绘制贝塞尔曲线但 Canvas 保持空白

javascript - 使用 JQuery(或 JS)选择选中的输入复选框旁边的文本?

javascript - 滚动后导航到链接时如何不突出显示每个链接?

php - 如何在http get请求中发送数组

python - 在 numpy 2-dim 数组中堆叠列以获得 1-dim 数组

php - Laravel,将JSON数组转换为Array,并且只从Array中获取一个对象

c - 尝试使用重新定义函数名称的 header 构建程序时出现“未定义的函数引用”

ios - Swift 中的单行函数