• JS函数返回值和return关键字

    JavaScript 函数提供两个接口实现与外界的交互,其中参数作为入口,接收外界信息;返回值作为出口,把运算结果反馈给外界。

    在函数体内,使用 return 语句可以设置函数的返回值。一旦执行 return 语句,将停止函数的运行,并运算和返回 return 后面的表达式的值。如果函数不包含 return 语句,则执行完函数体内每条语句后,返回 undefined 值。

    JavaScript 是一种弱类型语言,所以函数对接收和输出的值都没有类型限制,JavaScript 也不会自动检测输入和输出值的类型。

    示例1

    下面代码定义函数的返回值为函数。

    function f() {
        return function(x,y) {
            return x + y;
        }
    }

    示例2

    函数的参数没有限制,但是返回值只能是一个;如果要输出多个值,可以通过数组或对象进行设计。

    function f() {
        var a = [];
        a[0] = true;
        a[1] = function(x,y) {
            return x + y;
        }
        a[2] = 123;
        return a;  //返回多个值
    }

    在上面代码中,函数返回值为数组,该数组包含 3 个元素,从而实现使用一个 return 语句,返回多个值得目的。

    示例3

    在函数体内可以包含多条 return 语句,但是仅能执行一条 return 语句,因此在函数体内可以使用分支结构决定函数返回值,或者使用 return 语句提前终止函数运行。

    function f(x,y) {
        //如果参数为非数字类型,则终止函数执行
        if (typeof x != "number" || typeof y != "number") return;
        //根据条件返回值
        if (x > y) return x - y;
        if (x < y) return y - x;
        if (x * y <= 0) return x + y;
    }

全部加载完成