JavaScript并不是严格的面向对象的语言,但是带有面向对象的一些特性,我们可以通过这些特性创建js中的自定义类。

JavaScript中的类其实是function关键字包裹的一系列变量和方法。

比如定义一个Car类:

function Car(name,number){this.CarName=name;this.CarNumber=number;this.Run=function(speed){alert("汽车以"+speed+"时速行驶。");}
}

使用这个类的方法:

var x3=new Car("x3","京A10001");
x3.Run(100);

运行结果:

“汽车以100时速行驶。”

如果想在Car的Run方法中使用Car类中的变量,通常情况下使用this.CarName是获取不到的,此时我们可以在Car中定义一个局部变量让其指向this(指的是Car):

function Car(name,number){var thisCar=this;this.CarName=name;this.CarNumber=number;this.Run=function(speed){alert("汽车"+thisCar.CarName+"以"+speed+"时速行驶。");}
}

再次运行:

var x3=new Car("x3","京A10001");
x3.Run(100);

结果

"汽车x3以100时速行驶。"

转载于:https://www.cnblogs.com/Leechg/p/4554649.html

Javascript自定义类相关推荐

  1. 实现Javascript编写类的方式1(原生方式)

    网上实现javascript写类的方法有很多, 总结下不外乎以下几种. 我自己学习总结了一下. 构造方法方式 原型方式 构造方法+原型的混合方式 现在具体分析一下以上方式的优缺点: 构造方法方式 这是 ...

  2. JavaScript 自定义对象

    原文:JavaScript 自定义对象 在Js中,除了Array.Date.Number等内置对象外,开发者可以通过Js代码创建自己的对象. 目录 1. 对象特性:描述对象的特性 2. 创建对象方式: ...

  3. ExtJS 中自定义类

    首先我们来看一看在Javascript中,是怎样自定义类的: var Person = function (name, age) {this.Name = "";this.Age ...

  4. 客户端控件Javascript验证类

    客户端控件Javascript验证类 2005-09-20 javascritp一直是web开发的利器,在Ajax逐渐流行以后,javascript又更焕发活力.但是别误会,本文不讨论如何用javas ...

  5. [JavaScript]自定义MessageBox

    前言: 继上文([JavaScript]自定义Title的显示方式)之后,我的工作是进一步增强一些IE所不能提供的东东. 还记得Windows下的MessageBox嘛? IE呢?Alert?Conf ...

  6. JavaScript自定义事件

    很多DOM对象都有原生的事件支持,向div就有click.mouseover等事件,事件机制可以为类的设计带来很大的灵活性,相信.net程序员深有体会.随着web技术发展,使用JavaScript自定 ...

  7. JavaScript 自定义对象 及 new()原理与实现 如何完整地手写实现new

    JavaScript 自定义对象 及 new() 原理与实现 作者: 李俊才 邮箱 :291148484@163.com CSDN 主页:https://blog.csdn.net/qq_285502 ...

  8. JavaScript Class类详解

    ECMAScript 6 提供了更接近传统语言的写法,新引入的class关键字具有正式定义类的能力.类(class)是ECMAScript中新的基础性语法糖结构,虽然ECMAScript 6类表面上看 ...

  9. JavaScript自定义对象

    JavaScript自定义对象 2.1.类和对象的概念 ​ 所谓对象就是真实世界中的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都是一个对象,它是一种具体的存在,可以发现身边很多对象,汽 ...

最新文章

  1. 神经网络为何非激活函数不可?
  2. [转]我倡导无政府主义编程—Fred George访谈录
  3. python导入json模块_Python调用json模块代码实例
  4. sql的 select
  5. k8s删除deployment_k8s灾备指南(Velero)
  6. k8s优先级priority的使用
  7. 引用数据类型的一些知识
  8. 使用Java的MessageDigest实现MD5加密算法
  9. 字符串匹配算法:从这段代码判断你是不是在大气层
  10. 温度传感器、VB.NET
  11. 百度网盘限速破解——Proxyee-down的下载与安装教程
  12. 数据众包平台Premise持续向美军提供情报数据
  13. java sshd实现连接ssh操作
  14. 【Java八股文之基础篇(十九)】函数式编程之Stream流(上)
  15. 一个2层隐层神经网络解决抑或问题
  16. 部门来了个拿25k出来的00后测试卷王,老油条表示真干不过,已被...
  17. 保证充足的高质量睡眠
  18. 轨道交通车载设备军工电磁兼容试验-可靠性测试机构
  19. 字符串转日期,日期转字符串,日期比较
  20. 关于电脑自带的微软拼音输入法变成繁体的操作方法

热门文章

  1. 微信快速开发框架(二) -- 快速开发微信公众平台框架---简介
  2. We7 CMS 2.7beta3 版发布!SVN源码同步开放
  3. 验证邮箱是否合法php,验证邮箱是否合法
  4. android广告页白屏_Android 启动页面与广告页面的实现-Go语言中文社区
  5. python win10 arm_windows10 arm版下载-windows10arm镜像64位中文版 - 极光下载站
  6. 函数上下文this和参数列表arguments介绍
  7. java并发编程之Thread.sleep方法详解
  8. 06MySQL基本函数的使用
  9. Huffuman树(java)
  10. java 等待提示 事件_Java,Jsp点击事件后,出现等沙漏,处理等待状态时,有提示在动,适合任何事件使用...