`
tntxia
  • 浏览: 1507809 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Javascript定义类的方法

 
阅读更多

1. 经典的方式

 

function Cat() {
    this.name = "大毛";
  }

 

生成实例的时候用new关键字:

 

var cat1 = new Cat();
  alert(cat1.name); // 大毛

 

使用prototype,在外部定义类的方法:

 

Cat.prototype.makeSound = function(){
    alert("喵喵喵");
  }

 用Propotype可以实现对象之间数据的分享。

 

二、object.create()

 

var cat1 = Object.create(Cat);
  alert(cat1.name); // 大毛
  cat1.makeSound(); // 喵喵喵

 

使用Object.create不使用new关键字。但其实没什么用处,浏览器支持方面,IE不支持Object.create。如果不支持的浏览器可以用下面的语法补充:

 

if (!Object.create) {
    Object.create = function (o) {
       function F() {}
      F.prototype = o;
      return new F();
    };
  }

 

极简主义法:

 

var Cat = {
    createNew: function(){
      // some code here
    }
  };

 

极简主义法的继承:

 

var Animal = {
    createNew: function(){
      var animal = {};
      animal.sleep = function(){ alert("睡懒觉"); };
      return animal;
    }
  };

 子类定义:

 

var Cat = {
    createNew: function(){
      var cat = Animal.createNew();
      cat.name = "大毛";
      cat.makeSound = function(){ alert("喵喵喵"); };
      return cat;
    }
  };

 

分享到:
评论

相关推荐

    JavaScript定义类的几种方式总结

    JavaScript定义类的几种方式包括工厂方式、构造函数和原型方式,每种方法都有其特点和适用场景,接下来我们将详细探讨。 工厂方式是最早期的面向对象编程在JavaScript中的实践之一。使用工厂方式定义类,本质上就是...

    JavaScript定义类和对象的方法

    在JavaScript中定义类和对象的方法大致可以分为两类,一种是使用函数方式定义,另一种是先实例化Object类的方式定义。下面详细介绍这两种方法的实现和使用。 首先,函数方式定义类是最直观和常用的方法,它基于函数...

    JavaScript定义类或函数的几种方式小结

    JavaScript是一种基于原型的面向对象语言,其类和对象的定义方式与传统面向对象的语言(如Java或C++)有所不同。 JavaScript中定义类或函数,主要有以下几种方式: 1. 工厂方式 工厂方式是JavaScript中创建对象的...

    Javascript定义类(class)的三种方法详解

    本文将详细解释三种在JavaScript中定义类的方法:构造函数法、Object.create()法以及极简主义法。 1. 构造函数法 构造函数法是最常见的模拟类的方式,通过使用函数作为类的模板。构造函数通常以大写字母开头,表示...

    javascript中定义类的方法汇总

    为了克服上述方式的不足,通常会结合构造函数和原型方式,构造函数用于初始化非函数属性,而原型用于定义方法。这样可以确保方法被所有实例共享,同时允许通过构造函数参数初始化实例属性。 ```javascript ...

    javascript 类定义的4种方法

    以下是四种常用的 JavaScript 类定义方法: 1. **工厂函数方式**: 工厂函数是一种创建对象的方法,它通过函数返回一个具有特定属性和方法的对象。在提供的示例中,`createCar` 就是一个工厂函数,它接收参数,...

    如何用JavaScript定义一个类

    这段代码定义了一个`Dog`类,`constructor`方法是默认的构造函数,`makeNoise`是实例方法,而`getPrivate`展示了如何在类中定义私有属性的方法。虽然在类中定义的方法不能直接访问类外的`private`变量,但在实际应用...

    javascript面向对象之定义成员方法实例分析.docx

    注意:当在外部定义方法时,如果希望方法能够访问对象的内部属性,通常需要使用 `bind` 方法或其他方法确保 `this` 的正确指向。 #### 四、实例分析 我们以第一个示例为例进行更详细的分析: 1. **构造函数定义**...

    javascript 类方法定义还是有点区别

    JavaScript 是一种广泛应用于 Web 开发的动态编程语言,它的灵活性使得开发者有多种方式来定义和使用函数,包括作为类方法。在 JavaScript 中,类的概念是通过原型链和构造函数模拟实现的,而不是像其他面向对象语言...

    Javascirpt定义类详细介绍

    - **静态方法**:使用`static`关键字可以定义类的静态方法,这些方法不依赖于类的实例,而是直接在类本身上调用。 ```javascript class Person { static getClassName() { return this.name; } } console.log...

    JS定义类或对象

    下面我们将详细介绍如何在JavaScript中定义类或对象,并逐步展示其优势。 #### 二、定义对象的基本方法 ##### 2.1 使用函数创建对象 在JavaScript中,可以通过定义一个函数来创建对象。以下是一个简单的例子,...

    JavaScript 操作CSS类

    JavaScript提供了多种方法来操作这些类,主要通过`Element`对象的API。以下是几个关键的方法: 1. **classList.add()**: 这个方法用于向元素添加一个或多个类。例如,如果我们想在用户点击按钮时改变某个元素的类,...

    requirejs实现的简单的类定义

    总结起来,RequireJS为我们提供了一种优雅的方式来组织和加载JavaScript代码,而结合类的定义和继承,我们可以构建复杂的面向对象应用程序。在实际项目中,我们还可以利用RequireJS的优化工具进行代码压缩和合并,...

    扩展JavaScript基础类的方法

    一次在Iteye上面看到的一个帖子觉得写得非常好,就复制下来,本来留到自己以后慢慢用,我想很多朋友应该也需要的,就传上来分享一下

Global site tag (gtag.js) - Google Analytics