zoukankan      html  css  js  c++  java
  • js面向对象之构造函数

    最简单的面向对象程序
    <script type="text/javascript"> var obj = new Object(); obj.qq = '1079161148'; obj.name = 'mr lan' obj.showName = function() { alert('my name =' + this.name) } obj.showQQ = function() { alert('my qq =' + this.qq) } obj.showName() obj.showQQ() </script>
    封装重复使用的方法;
    <script type="text/javascript"> function createPerson(name, qq) {//构造函数 构建出一个对象; var obj = new Object(); obj.qq = qq; obj.name = name obj.showName = function() { alert('my name =' + this.name) } obj.showQQ = function() { alert('my qq =' + this.qq) } //出厂 return obj } var obj = createPerson('Mr Lan','1079161148'); var obj2 = createPerson('Mr Li','1079161168'); obj.showName(); obj.showQQ(); </script>
    //升级------->构造函数调用加new
    <script type="text/javascript"> function createPerson(name, qq) { //构造函数 构建出一个对象; this.qq = qq; this.name = name this.showName = function() { alert('my name =' + this.name) } this.showQQ = function() { alert('my qq =' + this.qq) } } var obj = new createPerson('Mr Lan', '1079161148'); var obj2 = new createPerson('Mr Li', '1079161168'); obj.showName() obj.showQQ()
      alert(obj.showName()==obj2.showName()) //false
    </script>
    //进阶面向对象编程
    <script type="text/javascript"> //混合构造函数混合方式(构造函数配合原型) function createPerson(name, qq) { //构造函数加属性 this.qq = qq; this.name = name } createPerson.prototype.showName = function(){//原型加方法 alert('my name =' + this.name) } createPerson.prototype.showQQ = function(){ alert('my qq =' + this.qq) } var obj = new createPerson('Mr Lan', '1079161148'); var obj2 = new createPerson('Mr Li', '1079161168'); //obj.showName() //还可以继续用不影响使用 //obj.showQQ() alert(obj.showName()==obj2.showName())//true </script>
  • 相关阅读:
    公平锁与非公平锁源码对比
    内存屏障和volatile内存语义的实现
    熟悉activemq的初步试用
    springMVC中数据流解析与装载
    ubuntu工作常用命令及需要留意的点汇总
    maven相关配置
    ueditor问题
    关于layer的问题
    thymeleaf
    Node Util模块(转存)
  • 原文地址:https://www.cnblogs.com/lhl66/p/8001609.html
Copyright © 2011-2022 走看看