JavaScript基础讲解 - 函数与参数

HTML5学堂 :函数与参数,虽然是基础知识,但是基础不扎实,就更不必谈什么“高级开发”了,毕竟复杂的功能是由多个简单功能堆积而成的。函数中的参数知识,需要注意的是形参、实参以及arguments这个“神奇的”对象。另外return可用于函数返回,如果没有设置函数的默认返回值是什么呢?

函数

什么是函数呢?简单的说,函数就是把多条语句封装起来,可以在任意地方放置,也可以在任意地方调用执行。

函数的声明

ECMAScript中的函数使用function关键字来声明,后跟一组参数以及函数体。

语法:

<script>
    function functionName(arg0, arg1, ..., argN) {
        // 具体函数内容 - HTML5学堂
    }
</script>

实例:

<script>
    function sayName(name, username) {
        alert(name + ':' + username);
    }
</script>

函数的调用执行

sayName('刘国利', '独行冰海');

参数

在定义函数的时候括号中的参数叫做形参,调用函数的时候,括号中的参数叫做实参。如果我们规定了形参只有两个(即只有两个用于接收数据的参数),此时在调用的时候我们传递了1个参数或者3个参数进来,解析器也是能够正常解析的。在ECMAScript的内部,使用一个数组来表示参数,函数接收到的参数始终都是放置在这个数组当中的。在函数体内,可以通过arguments对象来访问这个参数数组,从而获取传递给函数的每一个参数。

不过需要注意的是,arguments并非是一个数组,是一个对象。不过它和数组有些类似,可以使用方括号的语法访问它的每一个元素,用length属性来确定传递进来的参数个数。

另外,如果形参的数量大于了实参的数量(也就是传递进来的参数数量要比接收的少,出现了形参接收不到值的现象),没有传递值的命名参数将自动被赋予undefined值。就如同定义了但是没有初始化一样。

原文发布于微信公众号 - HTML5学堂(h5course-com)

原文发表时间:2016-03-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏吾爱乐享

java学习之数组元素排序,冒泡排序和选择排序

1094
来自专栏大闲人柴毛毛

稳扎稳打JavaScript(一)——作用域链内存模型

几个概念 在开始之前,先了解几个概念。 1.1. 作用域 作用域是指当前正在执行的代码能够访问到变量的范围; 每个函数都有各自的作用域,存储函数所有的局部变量...

4388
来自专栏大前端_Web

js浮点数加减乘除

版权声明:本文为吴孔云博客原创文章,转载请注明出处并带上链接,谢谢。 https://blog.csdn.net/wkyseo/articl...

1113
来自专栏九彩拼盘的叨叨叨

JavaScript 字符串练习题

如果对字符串的 API 不是很熟悉,可查阅 W3School JavaScript String API。

751
来自专栏C语言及其他语言

【编程经验】变量的存储类型

在 C 语言中,变量是对程序中数据所占内存空间的一种抽象定义,定义变量时,用户定义变量的名、 变量的类型,这些都是变量的操作属性。不仅可以通过变量...

991
来自专栏java 成神之路

JAVA对象在JVM中内存分配

33412
来自专栏全沾开发(huā)

搞懂JavaScript中的连续赋值

搞懂JavaScript中的连续赋值 前段时间老是被一道题刷屏,一个关于连续赋值的坑。 遂留下一个笔记,以后再碰到有人问这个题,直接...

3696
来自专栏IT可乐

深入理解计算机系统(3.8)------数组分配和访问

  上一篇博客我们讲解了汇编语言中过程(函数)的调用实现。理解数据如何在调用者和被调用者之间传递,以及在被调用者当中局部变量内存的分配以及释放是最重要的。那么这...

20310
来自专栏数据结构与算法

1643 线段覆盖 3

1643 线段覆盖 3 时间限制: 2 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题目描述 Description 在一个...

2568
来自专栏黑白安全

关于PHP语言在内存中的分配(堆和栈的区别)

本文以PHP语言为例来分析计算机中各段存储区的区别,代码段、堆空间段、代码段、初始化静态常量段。

1872

扫码关注云+社区