js面向对象编程总结


Posted in Javascript onFebruary 16, 2017

//定义Circle类,拥有成员变量r,常量PI和计算面积的成员函数area()

1.工厂方式

var Circle = function() {
 var obj = new Object();
 obj.PI = 3.14159;
 obj.area = function( r ) {
  return this.PI * r * r;
 }
 return obj;
}
var c = new Circle();
alert( c.area( 1.0 ) );

2.比较正规的写法

function Circle(r) {
  this.r = r;
}
Circle.PI = 3.14159;
Circle.prototype.area = function() {
 return Circle.PI * this.r * this.r;
}
var c = new Circle(1.0); 
alert(c.area());

3.json写法

var Circle={
 "PI":3.14159,
 "area":function(r){
   return this.PI * r * r;
  }
};
alert( Circle.area(1.0) );

4.有点变化,但是实质和第一种一样

var Circle=function(r){
  this.r=r;
}
Circle.PI = 3.14159; 
Circle.prototype={
 area:function(){
  return this.r*this.r*Circle.PI;
 }
}
var obj=new Circle(1.0);
alert(obj.area())

Circle.PI = 3.14159; 能够放入属性中写成this.PI=3.14159;

常用为第一种和第三种

第三种写法的扩展小实例

var show={
  btn:$('.div1'),
  init:function(){
   var that=this;
   alert(this);
   this.btn.click(function(){
     that.change();
     alert(this);
    })
  },
  change:function(){
   this.btn.css({'background':'green'});
  }
 }
 show.init();

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
[原创]提供复制本站内容时出现,该文章转自脚本之家等字样的js代码
Mar 27 Javascript
服务器安全设置的几个注册表设置
Jul 28 Javascript
JS+CSS实现仿msn风格选项卡效果代码
Oct 22 Javascript
JS正则表达式比较常见用法
Jan 26 Javascript
javascript 数组的正态分布排序的问题
Jul 31 Javascript
jquery ui sortable拖拽后保存位置
Apr 27 jQuery
input输入框内容实时监测(附代码)
Aug 15 Javascript
react native 获取地理位置的方法示例
Aug 28 Javascript
Vue 全家桶实现移动端酷狗音乐功能
Nov 16 Javascript
JSON生成Form表单的方法示例
Nov 21 Javascript
微信小程序实现菜单左右联动
May 19 Javascript
详解TypeScript中的类型保护
Apr 29 Javascript
gulp加批处理(.bat)实现ng多应用一键自动化构建
Feb 16 #Javascript
JS实现DIV高度自适应窗口示例
Feb 16 #Javascript
Js apply方法详解
Feb 16 #Javascript
JavaScript实现的XML与JSON互转功能详解
Feb 16 #Javascript
js实现文字无缝向上滚动
Feb 16 #Javascript
node学习记录之搭建web服务器教程
Feb 16 #Javascript
Angular实现跨域(搜索框的下拉列表)
Feb 16 #Javascript
You might like
php遍历文件夹所有文件子文件夹函数代码
2013/11/27 PHP
PHP中可以自动分割查询字符的Parse_str函数使用示例
2014/07/25 PHP
php采集中国代理服务器网的方法
2015/06/16 PHP
Linux php 中文乱码的快速解决方法
2016/05/13 PHP
PHP convert_cyr_string()函数讲解
2019/02/13 PHP
Yii框架的布局文件实例分析
2019/09/04 PHP
JS判断对象是否存在的10种方法总结
2013/12/23 Javascript
js中生成map对象的方法
2014/01/09 Javascript
jquery实现个人中心导航菜单效果和美观都非常不错
2014/09/02 Javascript
javascript面向对象之this关键词用法分析
2015/01/13 Javascript
javascript实现框架高度随内容改变的方法
2015/07/23 Javascript
jQuery.ajax 跨域请求webapi设置headers的解决方案
2016/08/08 Javascript
angularjs+bootstrap实现自定义分页的实例代码
2017/06/19 Javascript
详解基于 axios 的 Vue 项目 http 请求优化
2017/09/04 Javascript
Bootstrap实现翻页效果
2017/11/27 Javascript
vue.js select下拉框绑定和取值方法
2018/03/03 Javascript
vue.js中toast用法及使用toast弹框的实例代码
2018/08/27 Javascript
JS html事件冒泡和事件捕获操作示例
2019/05/01 Javascript
基于Bootstrap和JQuery实现动态打开和关闭tab页的实例代码
2019/06/10 jQuery
layui使用templet格式化表格数据的方法
2019/09/16 Javascript
vue 里面的 $forceUpdate() 强制实例重新渲染操作
2020/09/21 Javascript
python实现批量下载新浪博客的方法
2015/06/15 Python
pandas apply 函数 实现多进程的示例讲解
2018/04/20 Python
python下解压缩zip文件并删除文件的实例
2018/04/24 Python
对Python中的条件判断、循环以及循环的终止方法详解
2019/02/08 Python
Python 实现数据结构-堆栈和队列的操作方法
2019/07/17 Python
详解python opencv、scikit-image和PIL图像处理库比较
2019/12/26 Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
2020/05/08 Python
Virtualenv 搭建 Py项目运行环境的教程详解
2020/06/22 Python
HTML5中Localstorage的使用教程
2015/07/09 HTML / CSS
英国最大的美妆产品在线零售商之一:Beauty Bay
2017/09/29 全球购物
船餐厅和泰晤士河餐饮游轮:Bateaux London
2018/03/19 全球购物
伦敦著名的运动鞋综合商店:Footpatrol
2019/03/25 全球购物
大学本科毕业生求职简历的自我评价
2013/10/09 职场文书
建筑自我鉴定
2013/10/19 职场文书
财务会计自荐信范文
2014/02/21 职场文书