zoukankan      html  css  js  c++  java
  • js 函数(function)

    《Javascript高级程序设计第三版》

    3.7 函数

      1. ECMAScript中的函数在定义时,不必指定是否返回值。

      2. 位于return语句之后的任何code都永远不会执行。(之所以写这一条;因为学习时,被残酷的debug和规定强行接受了,)

      3. 可以通过直接使用return来停止执行当前code,并返回undefined。一般这种用法在需要提前终止code又不需要返回值的时候。

      4. use strict,不能将函数&参数命名为eval&arguments,不能出现两个参数同名的情况。(其实在非strict下,也不推荐;只不过在strict下,会导致语法错误)

    3.7.1 理解参数(arguments)

      1. arguments 是一个object,包含一个用于存放传入参数的Array、传入参数的个数。

      2. 命名的参数只是提供便利,但不是必需的。

        function fnHowManyArgs(){

          alert(arguments.length);

        }

        fnHowManyArgs(12,"aa");  // 2

        fnHowManyArgs();  // 0

        fnHowManyArgs(2);  // 1

        可以利用这个特性来弥补ECMAScript没有重载的缺憾:

        function fnAdd(){

          var sum;

          swith(arguments.length){

            case 1:

              sum = arguments[0]+100;

              breaks;

            default:

              sum=100;

              breaks;

          }

          return sum;

        }

      3. arguments 的值永远与对应的传入参数的值保持同步,但二者具有独立的内存空间

      4. arugments 的长度由传入的参数决定,不是由定义函数时的命名参数决定的。

      5. 没有传值的命名参数将自动被赋予undefined。

      6. use strict,修改arguments的值,将导致语法错误。

        纯记录,如有错误,请留言交流

  • 相关阅读:
    MySQL学习总结(五)表数据查询
    MySQL学习总结(四)数据的基本操作以及MySQL运算符和常用函数
    MySQL学习总结(三)索引
    MySQL学习总结(二)数据库以及表的基本操作
    MySQL学习总结(一)下载与安装
    记一次SmtpClient发送邮件引发的系列问题
    C语言学习笔记(五) 数组
    C语言学习笔记(四) 流程控制
    C语言学习笔记(三) 输入输出函数的基本用法以及运算符
    C语言学习笔记(二) 基础知识
  • 原文地址:https://www.cnblogs.com/Ruonan-Li/p/5237076.html
Copyright © 2011-2022 走看看