js函数应用
 
【函数的声明及调用】:
1.函数声明:
   function 函数名(参数1,参数2,·····){
   //函数体
   return 结果;
  >>函数调用的格式:
   函数名(参数1的值,参数2的值,·····)
     事件调用
   }
2.函数声明的几点强调:
①.函数名的声明,必须符合驼峰法则(首字母小写,之后的每个单词首字母大写);
②.参数列表,可以有参可以无参,分别为有参函数,无参函数;
③.声明函数时的参数列表叫形参列表(变量的名);调用函数是的参数列表叫实参列表(变量的值);
函数中实际有效的参数取决于实参的赋值,未被赋值的形参,将为undefined;
④函数如果需要返回值,可用return返回结果;
    调用函数时,使用var 变量名=函数名();的方式,接受返回结果;
    如果函数没有返回值,则接受的结果为undefined;
⑤函数的作用域:
    在函数中,使用var生命的变量,默认为函数的局部变量,只在函数中起作用;
    不用var声明的,则为全局变量;
    函数中的全局变量,必须在函数调用后才能使用;
    函数的形参列表,为函数的局部变量,只在函数内部使用;
⑥函数声明与函数调用没有先后关系,调用语句可以写在声明之前。
  【匿名函数的声明及调用】
    1.声明一个匿名函数,直接赋给某个事件;
   window.onload=function(){}
    2.使用函数表达式,声明匿名函数;
       声明函数表达式:var func3=function(){}
       调用函数表达式:func3();
       >>使用匿名函数表达式,则调用语句,必须在声明语句之后,否则报错(对比常规函数声明与调用区别)
   3.使用自执行函数声明(重要):
              !function(参数1){}(参数1的值);//使用任意运算符开头,一般使用!
              (function(){}());//使用()将匿名函数级之后的括号包裹;
              (function(){})();//使用()只包裹匿名函数表达式;
    三种写法的特点:
           1.开头加!,结尾加();不容易乱,推荐使用;
           2.可以表明匿名函数与之后的()为一个整体,推荐使用;
           3.无法表明函数与之后的()为一个整体,不推荐使用;
【Arguments对象】
  1.作用:用于保存调用函数时,所赋值的实参列表。
  >>当我们调用函数,并使用实参赋值时,实际上参数已经保存到arguments数组中,即使没有形参也可以使用arguments[n]的形式调用参数。
  2.arguments数组的个数取决于实参,与形参无关,当第n个位置的形参,实参,arguments都存在时,形参与arguements是同步的(即在函数中修改其中一个值,另一个会同步变化)。
  3.arguments.callee是argument的重要属性,用于返回arguements所在函数的引用;
  arguement.callee()可以调用自身函数执行;
 在函数内部调用函数自身的写法,被称为递归,所以arguments.callee()是递归调用时常用的方式。
 【js中代码执行顺序】
      js中代码运行,会先进行检查,装载,及声明变量,函数等操作;
      然后再进行执行阶段(变量的赋值属于执行阶段);
      函数的声明属于检查装载阶段,函数的调用属于执行阶段,函数声明与函数调用没有先后关系,    调用语句可以写在声明之前。
举例说明:
  console.log(num);
   var num=10;
   funN();
   function funcN(){}
  所以,上述代码,执行流程:
  -----检查装载阶段-----
  var num;       //变量声明
  function funcN()   //声明函数
  -----执行阶段-----
  console.log(num);
    num=10;
  funN();      //执行函数中{}部分

 

js函数的使用的更多相关文章

  1. 3.3 js函数

    1.函数语法: 函数声明的方式:function 函数名(参数1,参数2-){//函数体;}函数调用:函数名(参数1,参数2-); 函数内不一定都指定返回值. 如果需要指定返回值,可用 return ...

  2. Js函数function基础理解

    正文:我们知道,在js中,函数实际上是一个对象,每个函数都是Function类型的实例,并且都与其他引用类型一样具有属性和方法.因此,函数名实际上是指向函数对象的指针,不与某个函数绑定.在常见的两种定 ...

  3. js函数表达式和函数声明的区别

    我们已经知道,在任意代码片段外部添加包装函数,可以将内部的变量和函数定义"隐 藏"起来,外部作用域无法访问包装函数内部的任何内容. 例如: var a = 2; function ...

  4. 通用js函数集锦<来源于网络> 【二】

    通用js函数集锦<来源于网络> [二] 1.数组方法集2.cookie方法集3.url方法集4.正则表达式方法集5.字符串方法集6.加密方法集7.日期方法集8.浏览器检测方法集9.json ...

  5. 通用js函数集锦<来源于网络/自己> 【一】

    通用js函数集锦<来源于网络/自己>[一] 1.返回一个全地址2.cookie3.验证用户浏览器是否是微信浏览器4.验证用户浏览器是否是微博内置浏览器5.query string6.验证用 ...

  6. 100多个基础常用JS函数和语法集合大全

    网站特效离不开脚本,javascript是最常用的脚本语言,我们归纳一下常用的基础函数和语法: 1.输出语句:document.write(""); 2.JS中的注释为//3.传统 ...

  7. JS函数

    1.document.write(""); 输出语句2.JS中的注释为//3.传统的HTML文档顺序是:document->html->(head,body)4.一个浏 ...

  8. js函数和运算符

    函数是由事件驱动或者它被调用时执行可重复使用的代码块. <script> function myFunction(){ Alert(“hello World!”): } </scri ...

  9. JavaScript学习03 JS函数

    JavaScript学习03 JS函数 函数就是包裹在花括号中的代码块,前面使用了关键词function: function functionName() { 这里是要执行的代码 } 函数参数 函数的 ...

  10. JSF页面中使用js函数回调后台bean方法并获取返回值的方法

    由于primefaces在国内使用的并不是太多,因此,国内对jsf做系统.详细的介绍的资料很少,即使有一些资料,也仅仅是对国外资料的简单翻译或者是仅仅讲表面现象(皮毛而已),它们的语句甚至还是错误的, ...

随机推荐

  1. 20155304 2016-2017-2 《Java程序设计》第五周学习总结

    20155304 2016-2017-2 <Java程序设计>第五周学习总结 教材学习内容总结 第八章 try catch JVM会先尝试执行try区块中的内容,若发生错误且与catch后 ...

  2. Android Doze模式启用和恢复

    从Android 6.0(API level 23)开始,Android提出了两个延长电池使用时间的省电特性给用户.用户管理可以在没有充电的情况下管理app的行为.当用户一段时间没有使用手机的时候,D ...

  3. Spark踩坑记——共享变量

    [TOC] 前言 Spark踩坑记--初试 Spark踩坑记--数据库(Hbase+Mysql) Spark踩坑记--Spark Streaming+kafka应用及调优 在前面总结的几篇spark踩 ...

  4. Java web的几种异常处理 (转)

    一.在servlet容器中处理异常 以下两种方式: 1. 在web.xml定义异常处理  如果没有在web的应用中作异常处理,那么异常就会抛给Servlet容器,应该说此时Servlet容器是处理异常 ...

  5. selenide小白教程

    目的: 趁着清明假期临近把手头工作整理了一下,前段时间老大给了一个selenide研究的任务,虽然对selenium的应用比较熟悉,但是以前一直没怎么研究过其他衍生的技术,在研究过程中发现国内好的帖子 ...

  6. Python之路-字符编码&数据类型补充

    作业 三级菜单程序 menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{ }, '网易':{ }, 'google':{ } }, '中关村':{ '爱奇艺':{}, '汽车 ...

  7. PHP童鞋改JAVA代码怎么处理

    用线上升级平台代码练手,学习JAVA.飞哥建议我们自己从头再搭建一套,提高会大.我自己作为一个JAVA出身的人,用了几天时间学会PHP的经验来看.最好,先在原来代码基础上改些东西.熟悉了基本语法之后再 ...

  8. 【转载】关于c++中的explicit

    按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示: class String { String ( const char* p );  ...

  9. node服务成长之路

    我们的系统也从第一代平台开始到现在第四代平台更换中,对这四代平台做一个简单的介绍: 第一代平台,主要是集中式,以快速上线为目的:第二代平台主要是分布式改造,缓解各服务压力:第三代平台主要做服务端SOA ...

  10. 关于在网页拼接时出现:提示Uncaught SyntaxError: missing ) after argument list;错误的原因分析

    1:网页拼接不完善,可能哪里漏了:),},</XX>...等 2:如果有动态数据写入的话,请注意转义动态数据,如图(是转义后的内容,不会报错): 在写方法时:onclick中,注意单双引号 ...