javascript中在定义函数的几种形式

内容主要是讲述javascript在类(原型对象)中定义方法的几种形式,简要之主要有三种:this关键字、prototype关键字、var 对象名={name:value,name2:value2};这三种形式。

在publicFunction.js文件中定义js函数。在call.html文件中调用函数。

各个文件的位置如下图所示:

publicFunction.js文件中的代码如下:

 1 /**
 2  * javascript中如何在类(在javascript中类也叫原型对象。)中定义公共的方法呢?
 3  * 有三种方式:
 4  * 第一种用:this关键字。
 5  * 第二种用:prototype
 6  * 第三种用js专有的定义属性和方法的形式:var 对象名={name:value,name2,value2,name3:value3,....};
 7  * 顺便说一下,定义私有方法和私有变量:直接在类中写var=....即可,详细情况看下面代码即可。
 8  */
 9 //首先是第一种方法:this关键字。
10  //定义Dog这个类
11  function Dog() {
12      var sixi="village"//定义一个私有变量
13          //定义一个私有的函数:
14          function show() {
15               alert("ouyangfeng");
16          }
17     this.mountain="fragantMountain";//定义一个公共变量
18      //定义一个公共方法name()这是用this关键字定义的。
19       this.name=function(petname) {
20            document.writeln(petname);
21            show();//在公共函数内调用私有方法。
22       }
23  }
24  //用prototype定义一个公共的方法
25  Dog.prototype.master=function(masterName) {
26       window.alert("the dog's master is :"+masterName);
27  }
28  //用js特有的定义公共方法和属性的方式:
29  var dog={name:"小花",//定义变量name="小花"。相当于this定义中的this.name="小花"。
30           //定义一个chief()这个公共函数。
31           chief:function() {
32       document.writeln("ouyangfeng is a chief village of sixi");
33  },
34  //定义一个rapeFlower这个公共函数:
35  rapeFlower:function() {
36         document.writeln("the rape flower is so beautiful ,I have never seen");
37  }
38  };

call.html文件中的代码如下:

 1 <html>
 2     
 3     <head>
 4         <!-- 把 publicFunction.js这个文件导入进来,相当于java中的import
 5         特别说明一下src的路径我直接写为publicFunction.js,是因为这个call.html文件与它在同一目录下。
 6         如果不是在同一目录下,可以用相对路径写。
 7         在相对路径中:
 8         /  代表本级目录
 9         ../代表上一级目录
10         ../../代表上上一级目录。那么上上上级目录可以以此类推。
11         -->
12         <script type="text/javascript" src="publicFunction.js"></script> 
13         <script type="text/javascript">
14             <!--
15             //下面是调用publicFunction.js这个文件中的方法和变量。
16                 //创建一个Dog类的实例。
17                 var d=new Dog();
18                 var m=d.mountain;//调用Dog类中的Mountain公共变量:
19                 document.writeln(m);//输出这个变量。
20                 d.master("ouyangfeng");//调用master这个方法。
21                 d.name("leopard");//调用name()这个方法。
22                 /**
23                 调用publicFunction.js文件中的这个公共方法:var dog={};
24                 */
25                 var na=dog.name;//调用name这个变量。
26                 document.writeln(na);//输出这个变量。
27                 dog.rapeFlower();//调用rapeFlower这个方法
28                 dog.chief();//调用chief这个方法。
29             //-->
30         </script>
31     </head>
32 </html>
原文地址:https://www.cnblogs.com/1540340840qls/p/6277281.html