1、什么是函数

  函数的作用,可以写一次代码,然后反复地重用这个代码。

  如:我们要完成多组数和的功能。

  1.   var sum;
  2.   sum = 3+2;
  3.   alert(sum);
  4.  
  5.   sum=7+8 ;
  6.   alert(sum);
  7.   
  8.   .... //不停重复两行代码

  如果要实现8组数的和,就需要16行代码,实现的越多,代码行也就越多。所以我们可以把完成特定功能的代码块放到一个函数里,直接调用这个函数,就省去重复输入大量代码的麻烦。

  使用函数完成:

  1.   function add2(a,b){
  2.   sum = a + b;
  3.    alert(sum);
  4.   } // 只需写一次就可以
  5.  
  6.   add2(3,2);
  7.   add2(7,8);
  8.   .... //只需调用函数就可以

2、如何定义函数

  如何定义一个函数呢?看看下面的格式:

  1.   function 函数名( )
  2.   {
  3.    函数体;
  4.   }

  function定义函数的关键字,“函数名”你为函数取的名字,“函数体”替换为完成特定功能的代码。

  我们完成对两个数求和并显示结果的功能。并给函数起个有意义的名字:“add2”,代码如下:

  1.   <script type="text/javascript">
  2.    function add2(){
  3.    sum = 3 + 2;
  4.    alert(sum);
  5.   }
  6.    add2();
  7.   </script>

  结果: 

  

3、函数调用

  函数定义好后,是不能自动执行的,需要调用它,直接在需要的位置写函数名。

  第一种情况:在<script>标签内调用。

  1.    <script type="text/javascript">
  2.    function add2()
  3.     {
  4.    sum = 1 + 1;
  5.    alert(sum);
  6.    }
  7.    add2();//调用函数,直接写函数名。
  8.   </SCRIPT>

  第二种情况:在HTML文件中调用,如通过点击按钮后调用定义好的函数。

  1.   <html>
  2.   <head>
  3.   <script type="text/javascript">
  4.    function add2()
  5.     {
  6.    sum = 5 + 6;
  7.    alert(sum);
  8.    }
  9.   </script>
  10.   </head>
  11.   <body>
  12.   <form>
  13.   <input type="button" value="click it" onclick="add2()"> //按钮,onclick点击事件,直接写函数名
  14.   </form>
  15.   </body>
  16.   </html>

4、有参数的函数

  上节中add2()函数不能实现任意指定两数相加。其实,定义函数还可以如下格式:

  1.   function 函数名(参数1,参数2)
  2.   {
  3.    函数代码
  4.   }

  注意:参数可以多个,根据需要增减参数个数。参数之间用(逗号,)隔开。

  按照这个格式,函数实现任意两个数的和应该写成:

  1.   function add2(x,y)
  2.   {
  3.    sum = x + y;
  4.    document.write(sum);
  5.   }

  x和y则是函数的两个参数,调用函数的时候,我们可通过这两个参数把两个实际的加数传递给函数了。

  例如,add2(3,4)会求3+4的和,add2(60,20)则会求出60和20的和。

5、返回值的函数

  思考:上一节函数中,通过"document.write"把结果输出来,如果想对函数的结果进行处理怎么办呢?
  我们只要把"document.write(sum)"这行改成如下代码:
  function add2(x,y)
  {
     sum = x + y;
     return sum; //返回函数值,return后面的值叫做返回值。
  }
  还可以通过变量存储调用函数的返回值,代码如下:
  result = add2(3,4);//语句执行后,result变量中的值为7。
  注意:函数中参数和返回值不只是数字,还可以是字符串等其它类型。

案例一

使用javascript代码写出一个函数:实现传入两个整数后弹出较大的整数。

  1. <!DOCTYPE HTML>
  2. <html >
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>函数</title>
  6.  
  7. <script type="text/javascript">
  8.  
  9. function add(x,y){
  10. if(x>y){return x}
  11. else if(x<y){return y}
  12. else if(x=y){return x&&y};}
  13.  
  14. document.write(" 5 和 4 的较大值是:"+add(4,5)+"<br />");
  15. document.write(" 6 和 3 的较大值是:"+add(6,3) );
  16.  
  17. </script>
  18. </head>
  19. <body>
  20. </body>
  21. </html>

二、JavaScript语言--JS基础--JavaScript进阶篇--函数的更多相关文章

  1. 二、JavaScript语言--JS基础--JavaScript入门篇

    1.如何插入JS 使用<script>标签在HTML网页中插入JavaScript代码.注意, <script>标签要成对出现,并把JavaScript代码写在<scri ...

  2. 二、JavaScript语言--JS基础--JavaScript进阶篇--选项卡切换效果

    利用JavaScript知识,实现选项卡切换的效果. 效果图: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居     200万内购五环三居 140万安家东三环     北京首现零首付楼 ...

  3. 二、JavaScript语言--JS基础--JavaScript进阶篇--DOM对象 控制HTML元素

    1.认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面 ...

  4. 二、JavaScript语言--JS基础--JavaScript进阶篇--浏览器对象

    1.window对象 window对象是BOM的核心,window对象指当前的浏览器窗口. window对象方法:

  5. 二、JavaScript语言--JS基础--JavaScript进阶篇--事件响应

    1.什么是事件 JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 比如说,当用户 ...

  6. 二、JavaScript语言--JS基础--JavaScript进阶篇--流程控制语句

    1.if语句--做判断 if语句是基于条件成立才执行相应代码时使用的语句. 语法: if(条件) { 条件成立时执行代码} 注意:if小写,大写字母(IF)会出错! 假设你应聘web前端技术开发岗位, ...

  7. 二、JavaScript语言--JS基础--JavaScript进阶篇--数组

    1.什么事数组 我们知道变量用来存储数据,一个变量只能存储一个内容.假设你想存储10个人的姓名或者存储20个人的数学成绩,就需要10个或20个变量来存储,如果需要存储更多数据,那就会变的更麻烦.我们用 ...

  8. 二、JavaScript语言--JS基础--JavaScript进阶篇--JS基础语法

    1.变量 定义:从字面上看,变量是可变的量:从编程角度讲,变量是用于存储某种/某些数值的存储器.我们可以把变量看做一个盒子,盒子用来存放物品,物品可以是衣服.玩具.水果...等. 命名:变量名字可以任 ...

  9. 二、JavaScript语言--JS基础--JavaScript进阶篇--JavaScript内置对象

    1.什么事对象 JavaScript 中的所有事物都是对象,如:字符串.数值.数组.函数等,每个对象带有属性和方法. 对象的属性:反映该对象某些特定的性质的,如:字符串的长度.图像的长宽等: 对象的方 ...

随机推荐

  1. 关于Asp.Net Mvc3.0 使用KindEditor4.0 上传图片与文件

    http://blog.csdn.net/fyxq14hao/article/details/7245502 今天我们的Asp.Net Mvc 3的项目中,把KindEditor3.9改为 KindE ...

  2. log4j使用教程详解(怎么使用log4j2)

    1. 去官方下载log4j 2,导入jar包,基本上你只需要导入下面两个jar包就可以了(xx是乱七八糟的版本号): log4j-core-xx.jar log4j-api-xx.jar 2. 导入到 ...

  3. mq安装参考

    CentOS 6.2 64bit 安装erlang及RabbitMQ Server 1.操作系统环境(CentOS 6.2 64bit) [root@leekwen ~]# cat /etc/issu ...

  4. 使用jQuery解析JSON数据(由ajax发送请求到php文件处理数据返回json数据,然后解析json写入html中呈现)

    在上一篇的Struts2之ajax初析中,我们得到了comments对象的JSON数据,在本篇中,我们将使用jQuery进行数据解析. 我们先以解析上例中的comments对象的JSON数据为例,然后 ...

  5. 初学JDBC,最简单示例

    一.下载相应数据库驱动jar包,添加到项目中 二.注册驱动,数据库驱动只加入到classpath中是还不行的,还要在使用的时候注册一下,就像安装驱动软件,只拷贝到硬盘还不行,需要安装一下 Driver ...

  6. JavaScript的apply和call方法及其区别

    参考资料: http://blog.csdn.net/myhahaxiao/article/details/6952321 apply和call能“劫持”其他对象的方法来执行,其形参如下: apply ...

  7. CSS+JS实现兼容性很好的无限级下拉菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DT ...

  8. 解决Jquery对input file控件的onchange事件只生效一次的问题

    如题,解决办法的代码如下: 1. $('#fileId').live('change',function(){ //逻辑添加.... }); 2. $('#fileId').change(functi ...

  9. System.gc()与Object.finalize()的区别

    finalize()是由JVM自动调用的,你可以用System.gc(),但JVM不一定会立刻执行,JVM感觉内存空间有限时,才会开始执行finalize(),至于新的对象创建个数和被收集个数不同是因 ...

  10. NoClassDefFoundError: org/hibernate/annotations/common/reflection/ReflectionManager 解决方法

    差一个jar包, 将hibernate-commons-annotations.jar加入到classpath中