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

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

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

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

 /**
* javascript中如何在类(在javascript中类也叫原型对象。)中定义公共的方法呢?
* 有三种方式:
* 第一种用:this关键字。
* 第二种用:prototype
* 第三种用js专有的定义属性和方法的形式:var 对象名={name:value,name2,value2,name3:value3,....};
* 顺便说一下,定义私有方法和私有变量:直接在类中写var=....即可,详细情况看下面代码即可。
*/
//首先是第一种方法:this关键字。
//定义Dog这个类
function Dog() {
var sixi="village"//定义一个私有变量
//定义一个私有的函数:
function show() {
alert("ouyangfeng");
}
this.mountain="fragantMountain";//定义一个公共变量
//定义一个公共方法name()这是用this关键字定义的。
this.name=function(petname) {
document.writeln(petname);
show();//在公共函数内调用私有方法。
}
}
//用prototype定义一个公共的方法
Dog.prototype.master=function(masterName) {
window.alert("the dog's master is :"+masterName);
}
//用js特有的定义公共方法和属性的方式:
var dog={name:"小花",//定义变量name="小花"。相当于this定义中的this.name="小花"。
//定义一个chief()这个公共函数。
chief:function() {
document.writeln("ouyangfeng is a chief village of sixi");
},
//定义一个rapeFlower这个公共函数:
rapeFlower:function() {
document.writeln("the rape flower is so beautiful ,I have never seen");
}
};

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

 <html>

     <head>
<!-- 把 publicFunction.js这个文件导入进来,相当于java中的import
特别说明一下src的路径我直接写为publicFunction.js,是因为这个call.html文件与它在同一目录下。
如果不是在同一目录下,可以用相对路径写。
在相对路径中:
/ 代表本级目录
../代表上一级目录
../../代表上上一级目录。那么上上上级目录可以以此类推。
-->
<script type="text/javascript" src="publicFunction.js"></script>
<script type="text/javascript">
<!--
//下面是调用publicFunction.js这个文件中的方法和变量。
//创建一个Dog类的实例。
var d=new Dog();
var m=d.mountain;//调用Dog类中的Mountain公共变量:
document.writeln(m);//输出这个变量。
d.master("ouyangfeng");//调用master这个方法。
d.name("leopard");//调用name()这个方法。
/**
调用publicFunction.js文件中的这个公共方法:var dog={};
*/
var na=dog.name;//调用name这个变量。
document.writeln(na);//输出这个变量。
dog.rapeFlower();//调用rapeFlower这个方法
dog.chief();//调用chief这个方法。
//-->
</script>
</head>
</html>

javascript中在定义函数的几种形式的更多相关文章

  1. JavaScript 中,定义函数时用 var foo = function () {} 和 function foo() {}有什么区别?

    对于新手来说(本人也是新手-_-!),好像var foo = function () {} 和 function foo(){}并没有什么区别,意识里可能就认为就是两种不同的写法而已.但是,通过网上查 ...

  2. 前端学习 第二弹: JavaScript中的一些函数与对象(1)

    前端学习 第二弹: JavaScript中的一些函数与对象(1) 1.apply与call函数 每个函数都包含两个非继承而来的方法:apply()和call(). 他们的用途相同,都是在特定的作用域中 ...

  3. 理解和使用 JavaScript 中的回调函数

    理解和使用 JavaScript 中的回调函数 标签: 回调函数指针js 2014-11-25 01:20 11506人阅读 评论(4) 收藏 举报  分类: JavaScript(4)    目录( ...

  4. JS定义函数的2种方式以及区别简述(为什么推荐第二种方式)

     无意中看到了阮一峰大神多年前的一篇博客: 12种不宜使用的Javascript语法    看到第9条的时候受到了启发,感觉之前没怎么理解清楚的一些问题好像突然就清晰了,如下图 可能光这样看,有些小伙 ...

  5. 理解javascript中的回调函数(callback)【转】

    在JavaScrip中,function是内置的类对象,也就是说它是一种类型的对象,可以和其它String.Array.Number.Object类的对象一样用于内置对象的管理.因为function实 ...

  6. JavaScript 中的回调函数

    原文:http://javascriptissexy.com/ 翻译:http://blog.csdn.net/luoweifu/article/details/41466537 [建议阅读原文,以下 ...

  7. [转]JavaScript中的匿名函数及函数的闭包

    JavaScript中的匿名函数及函数的闭包  原文地址:http://www.cnblogs.com/wl0000-03/p/6050108.html 1.匿名函数 函数是JavaScript中最灵 ...

  8. JavaScript中的匿名函数及函数的闭包(转)

    JavaScript中的匿名函数及函数的闭包  https://www.cnblogs.com/wl0000-03/p/6050108.html 1.匿名函数 函数是JavaScript中最灵活的一种 ...

  9. JavaScript中的普通函数和箭头函数

    最近被问到了一个问题: javaScript 中的箭头函数 ( => ) 和普通函数 ( function ) 有什么区别? 我当时想的就是:这个问题很简单啊~(flag),然后做出了错误的回答 ...

随机推荐

  1. zip压缩工具,unzip解压缩工具

    zip压缩工具,unzip解压缩工具=================== [root@aminglinux tmp]# yum install -y zip[root@aminglinux tmp] ...

  2. netty-socket.io点对点通讯和聊天室通讯

    netty-socketio是基于netty的socket.io服务实现,可以无缝对接前端使用的socketio-client.js. 相对于javaee的原生websocket支持(@serverE ...

  3. 【PHP项目】【Smarty】Smarty截取字符串方法truncate

    smarty truncate 截取字符串  //在sql中truncate是删除表格(truncate是只删除内容,delete彻底删除)从字符串开始处截取某长度的字符,默认的长度为80指定第二个参 ...

  4. Redis在windows下安装过程(转)

    (转)原文:http://www.cnblogs.com/M-LittleBird/p/5902850.html 要使redis在PHP下运行, 需在PHP文件下的ext扩展文件夹中添加扩展文件 ph ...

  5. C++ 二叉搜索树

    二叉搜索树利用其特有的二叉树性质,使其搜索更方便 源代码: struct node { int val; node *left, *right; }; //the function of insert ...

  6. Android MultiType第三方库的基本使用和案例+DiffUtil的简单用法

    1.MultiType简单介绍 1.1.MultiType用于比较复杂的页面. 如下图,今日头条用到了MultiType处理各种复杂的页面.    这种还是比较简单的类型.因为一个页面也就这种类型. ...

  7. PHP.33-TP框架商城应用实例-后台9-商品相册-修改、删除(AJAX)

    商品相册图片删除 当商品删除时,把相册中的图片一并从硬盘和数据库中删除,根据商品id[因为每一张商品相片都会生成三张缩略图,所以删除时要将其缩略图一并删除] //钩子方法_before_delete: ...

  8. java.sql.SQLException: Field 'id' doesn't have a default value异常

    在做mybatis插入的时候报了这个错误,百度了下,貌似是因为这个健没有设置值且不是自增类型的. java.sql.SQLException: Field 'id' doesn't have a de ...

  9. copyEvens

    public int[] copyEvens(int[] nums, int count) { int newIndex=0; int i=0; int newArray[] = new int[co ...

  10. Lua语言中文手册 转载自网络

    Programming in LuaCopyright ® 2005, Translation Team, www.luachina.net Programming in LuaProgramming ...