zoukankan      html  css  js  c++  java
  • JavaScript之函数

    ECMAScript 中的函数使用 function 关键字来声明,后跟一组参数以及函数体。
    函数的基本语法如下所示:

    function functionName(arg0, arg1,...,argN) {
    statements
    }

    以下是一个函数示例:

    function sayHi(name, message) {
    alert("Hello " + name + "," + message);
    }

    ECMAScript 中的函数在定义时不必指定是否返回值。实际上,任何函数在任何时候都可以通过
    return 语句后跟要返回的值来实现返回值。请看下面的例子:

    function sum(num1, num2) {
    return num1 + num2;
    }

    这个函数会在执行完 return 语句之后停止并立即退出。因此,位于 return 语句之后的任何代码
    都永远不会执行。例如:

    function sum(num1, num2) {
    return num1 + num2;
    alert("Hello world"); // 永远不会执行
    }

    理解参数

    ECMAScript 函数不介意传递进
    来多少个参数,也不在乎传进来参数是什么数据类型。

    在函数体内可以通过 arguments 对象来
    访问这个参数数组,从而获取传递给函数的每一个参数。

    function sayHi() {
    alert("Hello " + arguments[0] + "," + arguments[1]);
    }

    通过访问 arguments 对象的 length 属性可以获知有多少个参数传递给了函数。

    function howManyArgs() {
    alert(arguments.length);
    }
    howManyArgs("string", 45); //2
    howManyArgs(); //0
    howManyArgs(12); //1

    没有重载

    在其他语言(如 Java)中,可以为一个函数
    编写两个定义,只要这两个定义的签名(接受的参数的类型和数量)不同即可。如前所述, ECMAScirpt
    函数没有签名,因为其参数是由包含零或多个值的数组来表示的。而没有函数签名,真正的重载是不可
    能做到的。

    如果在 ECMAScript 中定义了两个名字相同的函数,则该名字只属于后定义的函数。

    function addSomeNumber(num){
    return num + 100;
    }
    function addSomeNumber(num) {
    return num + 200;
    }
    var result = addSomeNumber(100); //300
  • 相关阅读:
    关于Update语句在不同数据库中的差别
    MSIL指令速查表
    一个对于博客园的建议
    代码风格关于if语句
    关于Page.cs文件中注释的一点补充
    在Java、C#和C++中遍历集合
    BPEL4WS的开源Java实现
    【Linux】linux固定ip
    【Linux】【MySQL】MySQL主从数据库
    wpf 写个简单的控件吧
  • 原文地址:https://www.cnblogs.com/leomei91/p/7459867.html
Copyright © 2011-2022 走看看