mozilla
您的搜索结果

    function

    总结

    函数声明用指定的参数声明一个函数。

    你也可以通过使用 Function 构造器或者 函数表达式 定义一个函数。

    语法

    function name([param,[, param,[..., param]]]) {
       [statements]
    }
    
    
    name
    函数名
    param
    传递给函数的参数。一个函数最多有255个参数
    statements
    函数体

    描述

    一个被函数声明创建的函数是一个 Function 对象,具有 Function 对象的所有属性、方法和行为。查看 Function 以获取 function 的详细信息。

    函数也可以被表达式创建( function expression )

    函数可以被有条件来声明,这意味着,在一个 if 语句里,函数声明是可以嵌套的。有的浏览器会将这种有条件的声明看成是无条件的声明,无论这里的条件是true还是false,浏览器都会创建函数。因此,它们不应该被使用。

    默认情况下,函数是返回 undefined 的。想要返回一个其他的值,函数必须通过一个 return 语句指定返回值。

    有条件的创建函数

    函数可以被有条件来声明,这意味着,在一个 if 语句里,函数声明是可以嵌套的。有的浏览器会将这种有条件的声明看成是无条件的声明,无论这里的条件是true还是false,浏览器都会创建函数,详见这篇文章。因此,它们不应该被使用。

    函数声明提升

    Function declarations in JavaScript are hoisting the function definition. 你可以在函数声明之前使用函数:

    hoisted(); // logs "foo"
    
    function hoisted() {
      console.log("foo");
    }
     
     
     
     
     

    注意 function expressions 不会提升:

    notHoisted(); // TypeError: notHoisted is not a function
    
    var notHoisted = function() {
       console.log("bar");
    };

    示例

    示例: 使用函数

    下面的代码声明了一个函数,该函数返回了销售的总金额, 参数是产品a,b,c分别的销售的数量.

    function calc_sales(units_a, units_b, units_c) {
       return units_a*79 + units_b * 129 + units_c * 699;
    }

    规范

    Specification Status Comment
    ECMAScript 1st Edition. Standard Initial definition. Implemented in JavaScript 1.0
    ECMAScript 5.1 (ECMA-262)
    Function definition
    Standard  
    ECMAScript 6 (ECMA-262)
    Function definitions
    Release Candidate  

    浏览器兼容性

    Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
    Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

    相关链接

    文档标签和贡献者

    标签: 
    此页面的贡献者有: Wanglei, yenshen, teoli
    最后编辑者: yenshen,
    隐藏侧边栏