iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >js中什么是类
  • 696
分享到

js中什么是类

2024-04-02 19:04:59 696人浏览 独家记忆
摘要

小编给大家分享一下js中什么是类,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!什么是类?类(class)是在 JS 中编写构造函

小编给大家分享一下js中什么是类,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

什么是类?

类(class)是在 JS 中编写构造函数的新方法。它是使用构造函数的语法糖,在底层中使用仍然是原型和基于原型的继承。

 //ES5 Version
   function Person(firstName, lastName, age, address){
      this.firstName = firstName;
      this.lastName = lastName;
      this.age = age;
      this.address = address;
   }

   Person.self = function(){
     return this;
   }

   Person.prototype.toString = function(){
     return "[object Person]";
   }

   Person.prototype.getFullName = function (){
     return this.firstName + " " + this.lastName;
   }  

   //es6 Version
   class Person {
        constructor(firstName, lastName, age, address){
            this.lastName = lastName;
            this.firstName = firstName;
            this.age = age;
            this.address = address;
        }

        static self() {
           return this;
        }

        toString(){
           return "[object Person]";
        }

        getFullName(){
           return `${this.firstName} ${this.lastName}`;
        }
   }

重写方法并从另一个类继承。

//ES5 VersionEmployee.prototype = Object.create(Person.prototype);function Employee(firstName, lastName, age, address, jobTitle, yearStarted) {
  Person.call(this, firstName, lastName, age, address);
  this.jobTitle = jobTitle;
  this.yearStarted = yearStarted;}Employee.prototype.describe = function () {
  return `I am ${this.getFullName()} and I have a position of ${this.jobTitle} and I started at ${this.yearStarted}`;}Employee.prototype.toString = function () {
  return "[object Employee]";}//ES6 Versionclass Employee extends Person { //Inherits from "Person" class
  constructor(firstName, lastName, age, address, jobTitle, yearStarted) {
    super(firstName, lastName, age, address);
    this.jobTitle = jobTitle;
    this.yearStarted = yearStarted;
  }

  describe() {
    return `I am ${this.getFullName()} and I have a position of ${this.jobTitle} and I started at ${this.yearStarted}`;
  }

  toString() { // Overriding the "toString" method of "Person"
    return "[object Employee]";
  }}

所以我们要怎么知道它在内部使用原型?

class Something {}function AnotherSomething(){}const as = new AnotherSomething();
const s = new Something();
console.log(typeof Something); 
// "function"console.log(typeof AnotherSomething); 
// "function"console.log(as.toString()); 
// "[object Object]"console.log(as.toString()); 
// "[object Object]"console.log(as.toString === Object.prototype.toString); 
// trueconsole.log(s.toString === Object.prototype.toString); // true

以上是“js中什么是类”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网JavaScript频道!

--结束END--

本文标题: js中什么是类

本文链接: https://www.lsjlt.com/news/96195.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • js中什么是类
    小编给大家分享一下js中什么是类,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!什么是类?类(class)是在 JS 中编写构造函...
    99+
    2024-04-02
  • js中基础的数据类型是什么
    本篇文章为大家展示了js中基础的数据类型是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。六种数据类数据类型指的是字面类型 在JS中有六种数据类型String  &n...
    99+
    2023-06-26
  • js中值类型和引用类型的区别是什么
    这篇文章主要介绍“js中值类型和引用类型的区别是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“js中值类型和引用类型的区别是什么”文章能帮助大家解决问题。1.JavaScript中的变量类型有哪...
    99+
    2023-07-02
  • js中Promise是什么
    这篇文章主要为大家展示了“js中Promise是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“js中Promise是什么”这篇文章吧。Promise是什么,...
    99+
    2024-04-02
  • js中Iterator是什么
    这篇文章将为大家详细讲解有关js中Iterator是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Iterator是什么,有什么作用?Iterator是理解第61条的...
    99+
    2024-04-02
  • js中的MVC是什么
    本篇内容主要讲解“js中的MVC是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“js中的MVC是什么”吧!MVC是什么?MVC是一种架构模式,它将应用抽象为...
    99+
    2024-04-02
  • js中什么是同步
    本篇内容主要讲解“js中什么是同步”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“js中什么是同步”吧!如果调用者在函数返回时能够获得预期结果(即获得预期返回值或看到预期效果),则该函数同步。如果...
    99+
    2023-06-25
  • js中什么是Set对象
    这篇文章将为大家详细讲解有关js中什么是Set对象,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是Set对象,它是如何工作的?Set 对象允许你存储任何类型的唯一值,...
    99+
    2024-04-02
  • html中js指的是什么
    这篇文章将为大家详细讲解有关html中js指的是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 在html中,js全称JavaScript...
    99+
    2024-04-02
  • c++中什么是类,什么是对象
    c++kquote>类在 c++ 中代表对象集合的模板,定义了对象的属性(数据成员)和行为(成员函数)。对象是类的实例,拥有类中的所有数据成员和成员函数,由类创建,并使用与类相同的...
    99+
    2024-05-08
    c++
  • js中offsetParent的用法是什么
    在JavaScript中,offsetParent属性返回一个指向最近的父元素的引用,该父元素是已定位的(position属性不是s...
    99+
    2023-09-21
    js
  • js中setinterval的用法是什么
    setInterval是JavaScript中的一个内置方法,用于按照指定的时间间隔重复执行指定的函数或代码块。setInterva...
    99+
    2023-10-08
    js
  • js中什么是回调函数
    小编给大家分享一下js中什么是回调函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!什么是回调函数?回调函数有什么缺点回调函数是...
    99+
    2024-04-02
  • js中dialog的用法是什么
    在JavaScript中,dialog用于显示一个对话框,与用户进行交互或显示一些信息。它提供了一种简单的方式来展示模态对话框,以便...
    99+
    2023-09-17
    js
  • js中document.all的用法是什么
    在JavaScript中,`document.all`是一个表示文档中所有元素的集合的特殊对象。它返回一个类似数组的对象,其中包含文...
    99+
    2023-09-21
    js
  • js中event.srcElement的作用是什么
    在Javascript中,event.srcElement是一个只读属性,用于返回触发事件的元素(即事件的目标)。它主要用于处理事件...
    99+
    2023-09-22
    js
  • js中什么是高阶函数
    这篇文章主要介绍了js中什么是高阶函数,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。什么是高阶函数?高阶函数只是将函数作为参数或返回值的函数...
    99+
    2024-04-02
  • js中location.search的作用是什么
    在JavaScript中,`location.search`用于获取URL中的查询参数部分。查询参数是URL中问号()后面的部分,包...
    99+
    2023-09-15
    js
  • JS中console.log的用法是什么
    console.log()是JavaScript中用于在控制台输出信息的方法。它接受一个或多个参数,并将它们打印到浏览器的控制台中。...
    99+
    2023-09-12
    JS
  • JS中prototype.js的作用是什么
    prototype.js是一个JavaScript库,其作用是为JavaScript提供一些缺失的功能和方法。它主要用于简化Java...
    99+
    2023-09-15
    JS
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作