JavaScript中的函数

函数也是对象,并且是javascript中的一等公民,可以用来创建普通对象。对象只是属性和值的集合

学习目标

1.掌握函数的作用

2.掌握函数的定义

3.掌握函数的调用

函数的作用

通过函数可以封装任意多条语句,而且可以在任何地方,任何时候调用执行。

函数的定义

函数使用function,后跟一组参数一级函数体,

语法如下:function functionName([arg0,arg1,...argn]){

statements

}

说明:1.functionName是要定义的函数名,属于标识符

2.[]中的arg0,arg1,...argn为函数的参数,不是不需要

3.[]只是说明的内容不是必须的,它不是语法

函数调用

语法:函数名([arg1,arg2,...argn])

学习目标

掌握函数的返回值

函数的返回值

任何函数在任何时候都可以通过return语句后跟要返回的值实现返回值。

说明:1.函数会在执行完return语句之后停止并立即退出。

  1. Return语句也可以不带有任何返回值,一般用于需要提前停止函数执行,而不需要返回值的情况下。

学习目标

掌握arguments

arguments

ECMAScript中的参数在内部用一个数组来表示,在函数体内通过arguments对象来访问这个数组参数。

说明:1.arguments对象只是与数组类似,并不是Array的实例。

2.[]语法访问他的每一个元素。

3.Length属性确定传递参数的个数。

<script>
       // 声明一个函数
       function myFun(){
             alert("我是一个函数");
       }
       // 函数的调用
       //myFun();

// 声明一个带有参数的函数
       function add(num1,num2){
          var sum=num1+num2;
          return sum;
       }
       
       /*console.log(add(3,5));

alert(add(99,789));

var s=add(-1,-9);

document.write('-1+-9='+s)*/

function myFunction(arg){
          // 如果arg是非数字,不做任何操作,否则返回arg的2倍
          if(isNaN(arg)) return;
          return arg*2;
       }

console.log(myFunction(40));
    </script>

<script>
       /*function inner(){
          // arguments
          console.log(arguments.length);
          console.log(arguments[1]); // 索引是从0开始的正整数
       }
       //inner(10,5);
       function add(num1,num2){    
          arguments[0]=99;
          console.log(num1);
       }
       add(55,88)*/
       
       // 求任意一组数的平均值
       function getAvg(){
          // 多所有参数进行求和
          var sum=0,len=arguments.length,i;
          for(i=0;i<len;i++){
             //sum=sum+arguments[i];
             sum+=arguments[i];
             // sum=0+5
             // sum=0+5+66
             // sum=0+5+66+45
          }
          return sum/len;
       }
       var avg=getAvg(5,66,45,32,88,24,40,199,3900);
       console.log(avg);
    </script>

JavaScript中的函数-7---函数的作用,定义,调用的更多相关文章

  1. 深入理解javascript中的立即执行函数(function(){…})()

    投稿:junjie 字体:[增加 减小] 类型:转载 时间:2014-06-12 我要评论 这篇文章主要介绍了深入理解javascript中的立即执行函数,立即执行函数也叫立即调用函数,通常它的写法是 ...

  2. javascript中的立即执行函数(function(){…})()

    javascript中的立即执行函数(function(){…})() 深入理解javascript中的立即执行函数,立即执行函数也叫立即调用函数,通常它的写法是用(function(){…})()包 ...

  3. 深入理解javascript中的立即执行函数

    这篇文章主要介绍了深入理解javascript中的立即执行函数,立即执行函数也叫立即调用函数,通常它的写法是用(function(){…})()包住业务代码,使用jquery时比较常见,需要的朋友可以 ...

  4. [转]Javascript中的自执行函数表达式

    [转]Javascript中的自执行函数表达式 本文转载自:http://www.ghugo.com/javascript-auto-run-function/ 以下是正文: Posted on 20 ...

  5. 在javascript中关于变量与函数的提升

    在javascript中关于变量与函数的提升 一.简介 在javascript中声明变量与函数的执行步骤: 1.先预解析变量或函数声明代码,会把用var声明的变量或者函数声明的代码块进行提升操作 2. ...

  6. JavaScript中的内置函数

    JavaScript中的内置函数 制作人:全心全意 在使用JavaScript语言时,除了可以自定义函数之外,还可以使用JavaScript的内置函数,这些内置函数是由JavaScript语言自身提供 ...

  7. JavaScript 中对变量和函数声明提前的演示样例

    如题所看到的,看以下的演示样例(能够使用Chrome浏览器,然后F12/或者右键,审查元素.调出开发人员工具,进入控制台console输入)(使用技巧: 控制台输入时Shift+Enter能够中途代码 ...

  8. javascript中的console.log有什么作用?

    javascript中的console.log有什么作用? 主要是方便你调式javascript用的.你可以看到你在页面中输出的内容. 相比alert他的优点是:他能看到结构话的东西,如果是alert ...

  9. 理解JavaScript中的去抖函数

    何为去抖函数?在学习JavaScript去抖函数之前我们需要先弄明白这个概念.很多人都会把去抖跟节流两个概念弄混,但是这两个概念其实是很好理解的. 去抖函数(Debounce Function),是一 ...

随机推荐

  1. 如何仅用递归函数和栈操作逆序一个栈——你要先用stack实现,再去改成递归——需要对递归理解很深刻才能写出来

    /** * 如何仅用递归函数和栈操作逆序一个栈 * 题目: * 一个栈依次压入1,2,3,4,5,那么从栈顶到栈底分别为5,4,3,2,1. * 将这个栈转置后,从栈顶到栈底为1,2,3,4,5,也就 ...

  2. burpsuite只拦截特定网站数据包教程

    一.背景说明 在配置burpsuite代理截包时经常会遇到这样的情况: 浏览器经常自己发一些包(收集用户信息),干挠渗透测试人员对目标网站的检测: 如果是代理手机,那就是很多APP都时不时发一些包,干 ...

  3. vs2017 Mariadb/mysql之旅

    记录vs2017使用 ef6+mysql的开发 填坑之旅.我的环境 vm+centos7+ docker-ce+mariadb+vs2017 总的原则是MySql.Data.Entity 要和 mys ...

  4. Unity中物体碰撞后去掉相互之间的反弹力

    最近自制了一个的角色控制器(没有重力的角色)时发现,角色碰撞到墙壁之后会有一个小小的反弹力导致角色有一个微弱的反弹位移,这样给人一种不好的感觉.研究了一下,除了限制坐标轴( Rigidbody---C ...

  5. redis:集群配置

    一.redis集群相关 1.概念:redis集群是通过数据分区提供可用性的,这样即使一部分节点失效也可以继续处理请求. 2.原理:集群使用数据分片实现,一个redis集群包括16384个哈希槽,数据库 ...

  6. CSS多div放一行

    HTML代码 <body> <div class="right"></div> <div class="left"&g ...

  7. day26 第二阶段共享

    第二阶段共享--网络编程 一.C/S架构 : 客户端(client)/服务端(sever)框架 B/S架构: 浏览器(brower)/服务端(sever)架构 软件CS架构: 服务端连接到浏览器,QQ ...

  8. base64加密解密c++代码

    关于base64加密解密代码: 程序运行功能请自行查看main函数: #include <stdio.h> #include <string.h> #include <a ...

  9. 使用MyEclipse开发Java EE应用:用XDoclet创建EJB 2 Session Bean项目(二)

    [MyEclipse最新版下载] 二.创建一个Session EJB – Part 1 MyEclipse中的EJB 2.x开发使用了EJB向导和集成XDoclet支持的组合. 每个EJB由三个基本部 ...

  10. Ubuntu16.04 python import cv2

    有些项目源代码里面需要导入cv2,没有安装的话会出现ImportError: No module named cv2. 下面给出如何在ubuntu下安装cv2: 直接在ternimal终端中输入命令: ...