码迷,mamicode.com
首页 > 编程语言 > 详细

Javascript高级程序设计——第三章:函数

时间:2015-08-30 11:10:14      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:

函数Function

通过函数封装多条语句,在任何地方执行。javascript函数不会重载,相同名字函数,名字属于后定义的函数通过function关键词声明。

function functionName(arguments){
    statement;
}

函数会在执行return语句后停止并退出。return语句之后的任何代码不会被执行。
function say(){
       return “hay”;
       alert("hay");           //永远不执行
}

return后不带返回值的会返回undefined。

 理解参数

  ECMAScript中的参数在内部是用一个数组来表示的,函数接受到的始终是这个数组,而不关心数组中包含哪些参数,

以及参数个数。在函数体内部可以通过arguments对象来访问这个参数数组,从而获取每个参数,实际上,arguments对

象只是与数组类似,它不是Array的实例。

function funcName(arg0, arg1, arg2...argn){
       alert(arguments[0]);             //可以通过方括号语法访问每个元素
       alert(arguments.length)        //通过length属性来确定传递进来多少参数
}

  即使没有arg标识符,函数的功能依旧,因为ECMAScript函数的命名参数只提供便利,但不是必须,另外解析器不会验证命名参数。

  arguments的值永远与命名参数值保持同步。

function fuc(num1){
      arguments[0] = 10;    //arguments的值会自动反映到参数名,同步的
      alert(num1);        //10
}

  但这两个值不是在相同的内存空间中,他们的内存空间是独立的,只是值会同步。arguments的length属性是传入参数确定的不是定义函数参数确定的

  没有传递的命名参数将自动赋予undefined,

  严格模式重新arguments的值导致语法错误。

 总结:

javascript的核心语言特性在ECMA-262中是以名为ECMAScript的伪语言来定义的,ECMAScript定义了基本的语法 操作符 数据类型 和对象,

但没对输入和输出做规定。理解ECMAScript的各种细节,是理解其在WEB浏览器中的实现——Javascript的关键

 

Javascript高级程序设计——第三章:函数

标签:

原文地址:http://www.cnblogs.com/yangxunwu1992/p/4770425.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!