2015.09.07

一、函数是什么?
函数,就是一个一系列JavaScript语句的集合,这是为了完成某一个会重复使用的特定功能。在需要该功能的时候,直接调用函数即可,而不必每次都编写一大堆重复的代码。并且在需要修改该功能的时候,也只要修改和维护这一个函数即可。

总之,将语句集合成函数,好处就是方便代码重用。并且,一个好的函数名,可以让人一眼就知道这个函数实现的是什么功能,方便维护。

函数的使用只需要2步:

(1)定义函数;

(2)调用函数;

二、函数的定义
在JavaScript中,使用函数前,必须用function关键字来定义函数。

函数常用方式有2种:

(1)不指定函数名的函数;

(2)指定函数名的函数;

1、不指定函数名的函数
语法:

function(参数1,参数2,….,参数n)
{
//函数体语句
}
说明:

定义函数必须使用function关键字。

2、指定函数名的函数
“指定函数名的函数”是JavaScript中使用最广泛的方法,反而“不指定函数名的函数”用得比较少。

语法:

function 函数名(参数1,参数2,….,参数n)
{
//函数体语句
return 表达式;
}
说明:

定义函数必须使用function关键字来定义。

函数名必须是唯一的,尽量通俗易懂,并且和定义代码有关。

函数可以使用return语句将某个值返回,也可以没有返回值。

参数是可选的,可以不带参数,也可以带多个参数。如果是多个参数的话,参数之间要用英文逗号隔开。

三、函数的调用
常用的函数调用方式有4种:

(1)简单调用;

(2)在表达式中调用;

(3)在事件响应中调用;

(4)通过链接调用;

四、特殊函数
JavaScript特殊函数有3种:

(1)嵌套函数;

(2)递归函数;

(3)内置函数;

1、嵌套函数
嵌套函数,顾名思义,就是在一个函数的内部定义另外一个函数。不过在内部定义的函数只能在内部调用,如果在外部调用,就会出错。

2、递归函数
递归函数用于让一个函数从其内部调用其本身。不过需要注意的是,如果递归函数处理不当,就会使程序陷入“死循环”。为了防止“死循环”的出现,可以设计一个做自加运算的变量,用于记录函数自身调用的次数,如果次数太多就让它自动退出循环。

3、内置函数
JavaScript中有2种函数:一种是用户自定义函数,另外一种是JavaScript语言内部已经定义好了,可以直接供我们调用的函数(也就是内置函数)。

时间: 2024-10-29 19:08:42

2015.09.07的相关文章

我关注的一周技术动态 2015.09.27

分布式系统实践 1. 走向分布式 http://dcaoyuan.github.io/papers/pdfs/Scalability.pdf 要点: 这是台湾的一个作者写的为期30天的分布式系统设计学习小册子, 刚开始涵盖了分布式系统设计的基本理论, 包括partiton, replication和CAP理论, 后面以kafka和zookeeper为例, 将上述理论加以实例化介绍, 内容非常精简, 适合初学者阅读和学习. 2. 如何编写一个分布式数据库 http://mp.weixin.qq.c

【我的书】Unity Shader的书 — 目录(2015.09.04更新)

写在前面 感谢所有点进来看的朋友.没错,我目前打算写一本关于Unity Shader的书. 出书的目的有下面几个: 总结我接触Unity Shader以来的历程,给其他人一个借鉴.我非常明白学Shader的艰难,在群里也见了很多人提出的问题.我觉得学习Shader还是一件有规律可循的事情,但问题是中文资料难觅,而大家又不愿意去看英文...这对我有什么好处呢?强迫我对知识进行梳理,对细节问题把握更清楚. 第二个原因你懂的. 关于本书的定位问题: 面向Unity Shader初学者,但要: 有一定的

2015.09.30信息系统项目管理师作业

2015.09.30 高级 第八章 项目成本管理重点 1.成本管理的意义和范畴: 2.成本估算:是编制一个为完成项目各活动所需要的资源成本的估算:是一个要钱的计算:是申请资金的: 3.成本预算,是花钱的计划:成本预算的输出就是成本基线: 4.成本失控的原因:成本估算工作和成本预算工作不够准确细致,思想认识存在误区,项目在进行成本估算和预算没有统一规范, 5.成本估算内容对完成项目个项活动所必需的各种资源的成本做出近似的估算,:编制成本估算:编制成本造价:项目造价包括项目成本和项目盈利: 6.编制

我关注的一周技术动态 2015.09.13

服务化和资源管理技术 1. 「Allen 谈 Docker 系列」之 Docker 镜像内有啥,存哪? http://mp.weixin.qq.com/s?__biz=MzA5NTUxNzE4MQ==&mid=220597399&idx=1&sn=3196ab17d396df2379db61bc1f4e8652&scene=1&srcid=r3aAMluxx25ucjdz8AEA&key=dffc561732c226518710e3db4f30f5904c4

UGITC携手西门子2015年07月21日举办机器人行业技术研讨会

UGITC携手西门子将在2015年07月21日下午在西门子大楼举办机器人行业技术研讨会.目前,国际制造业中心正向中国转移,用信息化带动工业化.用高新技术改造传统产业已成为我国工业发展的必由之路.作为先进制造装备之典型代表的工业机器人必将有一个大的产业发展空间.SiemensPLM助力ABB.柯马等机器人行业更快地迈向工业革命4.0,期待您的加入! 报名截止日期为7月20日(星期一) 请填写以下表格邮件回复邮件到:[email protected]进行报名,名额有限报名从速! 会议地点:上海市大连

Murano Weekly Meeting 2015.09.08

Meeting time: 2015.September.8th 1:00~2:00 Chairperson:  Serg Melikyan, PTL from Mirantis Meeting summary: 1.Future of stackforge/yaql. Action: The OpenStack community choose a date upon which to perform a mass migration of all stackforge/ projects i

Murano Weekly Meeting 2015.09.29

Meeting time: 2015.September.29th 1:00~2:00 Chairperson:  Serg Melikyan, PTL from Mirantis Meeting summary: 1.RabbitMQ Driver Desc:  Murano used kombu because oslo.messaging uses it. In the Liberty, Murano left one bug about the RabbitMQ. In the Mura

2015.09.13-2

常用js总结: function obj$(id)                       根据id得到对象function val$(id)                       根据id得到对象的值function trim(str)                      删除左边和右边空格function ltrim(str)                     删除左边空格function rtrim (str)                    删除右边空格fun

我关注的一周技术动态 2015.09.20

分布式系统实践 1. Google编程学院:分布式系统设计简介 http://article.yeeyan.org/view/150661/107052 要点: 这是google code university(可惜已经不维护了)介绍的分布式系统设计的基本原则, 这是中文翻译版. 文章中指出, 分布式编程和单机编程最大的区别在于对故障的处理. 分布式系统中增加了3种故障类型, 分别是成功, 失败和不确定. 不确定是最难处理的情况, 正确的处理了这3种情况, 也就意味着你对分布式系统编程的理解程度