1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="UTF-8">
5 <title></title>
6 <script type="text/javascript">
7
8 /*
9 * 函数 function
10 * - 函数也是一个对象
11 * - 函数中可以封装一些功能(代码),在需要时可以执行这些功能(代码)
12 * - 函数中可以保存一些代码在需要的时候调用
13 * - 使用typeof检查一个函数对象时,会返回function
14 */
15
16 //-------------------------------------------------------------------------------
17
18 //我们在实际开发中很少使用构造函数来创建一个函数对象
19 //创建一个函数对象
20 //可以将要封装的代码以字符串的形式传递给构造函数
21
22 //1.使用构造函数,这种方式不好,开发基本上不使用
23 var fun = new Function("console.log('Hello 这是我的第一个函数');");
24
25 //封装到函数中的代码不会立即执行
26 //函数中的代码会在函数调用的时候执行
27 //调用函数 语法:函数对象()
28 //当调用函数时,函数中封装的代码会按照顺序执行
29
30 fun();//Hello 这是我的第一个函数
31
32 //函数对象具有所有普通对象的功能,但要更强大,里面可以封装可执行的代码
33 fun.hello = "你好";
34 console.log(fun.hello); //你好
35
36
37 //----------------------------------------------------------------------
38 /*
39 * 使用 函数声明 来创建一个函数
40 * 语法:
41 * function 函数名([形参1,形参2...形参N]){
42 * 语句...
43 * }
44 */
45
46 //2.使用 函数声明
47 function fun2(){
48 console.log("这是我的第二个函数~~~");
49 alert("哈哈哈哈哈");
50 document.write("~~~~(>_<)~~~~");
51 }
52
53 console.log(fun2);
54 //调用fun2
55 fun2();
56
57
58 //----------------------------------------------------------------------
59
60 /*
61 * 使用 函数表达式 来创建一个函数
62 * var 函数名 = function([形参1,形参2...形参N]){
63 * 语句....
64 * }
65 */
66
67 //3.使用 函数表达式,就是创建一个匿名函数,将这个匿名函数赋值给一个变量
68 var fun3 = function(){
69 console.log("我是匿名函数中封装的代码");
70 };
71
72 fun3();//我是匿名函数中封装的代码
73
74
75 </script>
76 </head>
77 <body>
78 </body>
79 </html>