谁能简单地向我解释一下 JavaScript 中任务列表上下文中的原型继承是什么?非常困惑的新JS学生

问题描述

这是我不明白的地方,阅读它是我的头脑。我需要一个非常愚蠢的版本才能理解它:

创建原型继承:以前,您为具有多个属性(任务名称、描述等)的任务创建了通用自定义对象。现在,您将通过创建顶级任务对象和基于类别的不同类型的任务来展示您对原型继承的了解。例如,您的任务类别可能具有与教育任务类别不同的​​属性。但是,这两种类型的任务都需要从父任务对象继承一些通用属性方法

我也不太明白如何将任务存储为对象,或者为什么需要在任务列表的上下文中执行此操作,以及如何执行此操作。我认为这将是原型继承之前的第一步?感谢任何有时间解释的人。

我目前的 JavaScript 高级课程未及格,因此感谢您提供任何提示

解决方法

assigned-partitions

上述代码的控制台是:

$(document).ready(function () {
  var task = {
    name: "",description: "",status: "",eta: "",priority: "",owner: "",initiate() {
      console.log("Starting Task");
      this.status = "IN PROGRESS";
      console.log(this);
    },complete() {
      console.log("Ending Task");
      this.status = "COMPLETED";
      console.log(this);
    }
  };

  var education = {
    grade: "",studentName: "",subjects: [],__proto__: task
  };

  var grocery = {
    items: [],budget: "",spend: "",__proto__: task
  };

  education.grade = "10th";
  education.studentName = "Diana";
  education.subjects = ["Science","History"];
  education.name = "Complete Assignments";
  education.description = "Useful for better grades";
  education.initiate();
  education.complete();
});

如您所见,教育和杂货是新对象,它们现在扩展了原始的“任务”对象。这两个新对象现在基本继承了“任务”的所有属性和功能。

代码笔:https://codepen.io/pranaynailwal/pen/GRrKqQV?editors=1111

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...