归纳下js面向对象的几种常见写法总结

 更新时间:2016年08月24日 10:03:09   投稿:jingxian  
下面小编就为大家带来一篇归纳下js面向对象的几种常见写法总结。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

//定义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();

需要注意的是this的指向问题

以上这篇归纳下js面向对象的几种常见写法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • easyui tree带checkbox实现单选的简单实例

    easyui tree带checkbox实现单选的简单实例

    下面小编就为大家带来一篇easyui tree带checkbox实现单选的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • ES6中Symbol类型用法实例详解

    ES6中Symbol类型用法实例详解

    这篇文章主要介绍了ES6中Symbol类型用法,结合实例形式分析了Symbol类型的功能、使用方法与相关注意事项,需要的朋友可以参考下
    2017-04-04
  • js解决movebox移动问题

    js解决movebox移动问题

    这篇文章主要为大家详细介绍了js解决movebox移动问题,取消图片默认拖动事件,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • 详解wepy开发小程序踩过的坑(小结)

    详解wepy开发小程序踩过的坑(小结)

    这篇文章主要介绍了详解wepy开发小程序踩过的坑,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • 简单实现JS倒计时效果

    简单实现JS倒计时效果

    这篇文章主要教大家如何简单实现JS倒计时效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • 微信小程序如何修改radio和checkbox的默认样式和图标

    微信小程序如何修改radio和checkbox的默认样式和图标

    这篇文章主要介绍了微信小程序修改radio和checkbox的默认样式和图标,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • JavaScript+CSS实现仿天猫侧边网页菜单效果

    JavaScript+CSS实现仿天猫侧边网页菜单效果

    这篇文章主要介绍了JavaScript+CSS实现仿天猫侧边网页菜单效果,涉及javascript鼠标事件及页面元素动态操作的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • js获取字符串最后一位方法汇总

    js获取字符串最后一位方法汇总

    文章汇总了4种js获取字符串最后一位字符的方法,并附上示例说明,非常简单实用,这里推荐给大家
    2014-11-11
  • js类 from qq

    js类 from qq

    js类 from qq...
    2006-11-11
  • 基于BootstrapValidator的Form表单验证(24)

    基于BootstrapValidator的Form表单验证(24)

    这篇文章主要为大家详细介绍了基于BootstrapValidator的Form表验证,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12

最新评论