File tree Expand file tree Collapse file tree 3 files changed +49
-8
lines changed
Expand file tree Collapse file tree 3 files changed +49
-8
lines changed Original file line number Diff line number Diff line change 99
10101 . [ √] [ 在HTML中使用JavaScript ] (./article/001-use-javascript-in-html.md)
11112 . [ √] [ 基本概念-数据类型 ] (./article/002-basic-data-type.md)
12- 3 . [ -] 基本概念-函数
12+ 3 . [ √] [ 基本概念-函数 ] (./article/003-basic-function.md)
13+ 4 . [ -] 变量、作用域或内存问题
14+ 5 . [ -] 面向对象的程序设计
15+ 6 . [ -] 函数表达式
16+ 7 . [ -] BOM
1317
1418未完待续...
Original file line number Diff line number Diff line change 1+ ## JavaScript 函数
2+
3+ ### 1、理解参数
4+
5+ ECMAScript 函数的一个重要特点: 命名的参数只提供便利,但不是必须的。另外在命名参数方面,其他语言可能需要事先创建一个函数签名(即形参),而将来的调用必须与该签名一致。但在ECMAScript中,没有这些条条框框,解析器不会验证命名参数。运用这一特性,可实现函数的“重载”。
6+
7+
8+ ``` javascript
9+ function doSomeThing (arg1 , arg2 ) {
10+ // 由于 arguments[0] 与 arg1 值相同,因此他们可以互换使用。
11+ // arguments 的值永远与对应命名参数的值保持同步。
12+ arguments [1 ] = 10 ;
13+ console .log (arg2); // 10
14+ }
15+
16+ ```
17+
18+ 关于参数:没有传递值的命名参数将自动被赋予 undefined 值。这就跟定义了变量但又没有初始化一样。
19+
20+ ``` javascript
21+
22+ ```
23+
24+ #### 注意:
25+ ** ECMAScript 中的所有参数传递的都是值,不可能通过引用传递参数。**
26+
27+
28+
29+ ### 2、没有重载
30+
31+ ECMAScript 函数不能像传统意义上那样实现重载。而在其他语言中,可以为一个函数编写两个定义,只要这两个定义的签名(接受的参数的类型和数量)不同即可。ECMAScript函数没有签名,因为其参数是由包含零或多个值的数组来表示的。而没有函数签名,真正的重载是不可能做到的。
Original file line number Diff line number Diff line change 11< html >
2- < head >
3- < title > Example HTML page</ title >
4- </ head >
5- < body >
6- <!-- 这里放内容 -->
7- < script type ="application/javascript " src ="test.js "> </ script >
8- </ body >
2+ < head >
3+ < title > Example HTML page</ title >
4+ < script type ="application/javascript ">
5+ window . onload = function ( ) {
6+ for ( var temp in window ) {
7+ document . write ( "" + temp + "<br>" )
8+ }
9+ }
10+ </ script >
11+ </ head >
12+ < body >
13+
14+ </ body >
915</ html >
You can’t perform that action at this time.
0 commit comments