美文网首页
web开发学习日志6-函数

web开发学习日志6-函数

作者: 奋斗的岑爸 | 来源:发表于2018-03-14 13:59 被阅读0次

    到了相对复杂的一章,函数。

    什么是函数

    函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
    ---http://www.w3school.com.cn/js/js_functions.asp

    在大型项目中,有些代码块是需要反复调用的,如果每次都去敲这段代码,会使工作效率显著降低,因此通过把代码块封装在函数中,每次使用时直接调用函数,会让工作变得异常简单。

    语法

    函数由三大部分组成

    • 关键词 function
    • 函数名称(参数,调用函数时向其传递的值)
    • 要执行的代码块,用花括号包围

    function functionname()
    {
    这里是要执行的代码
    }

    返回语句:有时候希望函数将值返回调用它的地方,可以通过return 语句实现。使用 return 语句时,函数会停止执行,并返回指定的值。

    function sayHello() {
    var message = "Hello!";
    return message; // 返回message
    }

    注意事项:
    (1)function必需小写,因为JS对大小写敏感
    (2)函数名称小括号里的参数可以没有,这时直接把小括号留空;如果有多个参数,用逗号隔开

    使用返回值

    返回语句会给出返回值,返回值作用如下:

    函数的返回值可以存储在变量中或在整个程序期间作为参数使用

    例子:

    function add(x, y) {
    return x + y;
    }
    var sum = add(2, 5); // 调用 add 函数并将返回值存储在 sum 变量中

    作用域

    全局作用域
    在所有函数之外定义变量,视为全局作用域的一部分,该变量可以在程序任意位置被访问,即全局可用。

    函数作用域
    如果变量定义在函数内部,那么它在函数内任意位置可以被访问,包括该函数内部的其他函数。

    例子
    下面的例子中,a变量处于全局作用域,b, c和d变量处于函数作用域。那么下列代码在何处输出c的值不会产生错误呢?答案是function y() 和 function z()任意位置。因为后者属于前者的内部函数。

    var a = 1;
    function x() {
    var b = 2;
    function y() {
    var c = 3;
    function z() {
    var d = 4;
    }
    z();
    }
    y();
    }
    x();

    函数表达式

    当将函数赋值给变量时,函数可以有名称,也可以是匿名的。 调用时直接使用变量名称代替表达式中的函数。我们甚至可以内嵌地将函数传入另一个函数中。这种模式在 JavaScript 中经常用到,有助于简化代码。

    匿名函数表达式

    var doSomething = function(y) {
    return y + 1;
    }

    命名函数表达式

    var doSomething = function addOne(y) {
    return y + 1;
    }

    对于两种表达式都可以这样调用函数:
    doSomething(5);

    返回值

    6

    相关文章

      网友评论

          本文标题:web开发学习日志6-函数

          本文链接:https://www.haomeiwen.com/subject/evvxqftx.html