当前位置: 首页 > 知识库问答 >
问题:

难道我们不应该在es6类中预定义变量吗?[副本]

荆运诚
2023-03-14

为什么这告诉我一个错误?问题是让p=0;我只是想定义变量,然后在构造函数中为int赋值。如果我删除让p=0;它可以工作,但我不理解它,因为我认为这.p应该引用类中的预定义变量,对吗?顺便说一下,我不懂Javascript,我的知识来自Java

class Wizard {

   let p = 0;

  constructor(p) {
      this.p = p;
    // TODO replace this line.
  }
 power ()  {
     return this.p;
 }
}
let Gandalf = new Wizard(100);

共有1个答案

魏景龙
2023-03-14

好吧,JavaScript从一开始就不是一种OOP语言,或者至少不像Java那么严格。

在这个“软OOP”中,您可以动态地为对象分配属性,而不需要在类中声明它。这就是为什么声明属性并不重要的原因。

 类似资料:
  • 从…起http://docs.oracle.com/javase/tutorial/essential/concurrency/imstrat.html : 不要提供“setter”方法——修改字段或字段引用的对象的方法。使所有字段都是最终的和私有的。不要允许子类重写方法。最简单的方法是将类声明为最终的。一个更复杂的方法是使构造函数私有,并在工厂方法中构造实例。如果实例字段包括对可变对象的引用,不

  • 今天在课堂上,我的老师告诉我,我不应该在python中使用全局变量,因为函数应该能够独立存在。我想我可以通过参数和返回值来实现这一点?任何帮助都会很好,谢谢。

  • 问题内容: 我们的网站目前正在使用jQuery库,每月的访问量约为100万。我们希望包括以API为中心的方法,因此决定转向Javascript MVC并为此选择了angularJS。 现在我的问题是,我应该在Angular顶部使用jQuery,以便我需要重写最少的DOM操作代码,还是应该以Angular方式重写所有内容?我们使用的是jQuery插件,例如plupload,jQuery UI。等在网

  • 问题内容: 我一直在研究PDO 。我知道用PDO准备我的SQL语句可以防止发生SQL注入。 代码示例: 通过将ID绑定为数字,并且Title是字符串,我们可以限制当有人尝试在代码中进行SQL注入时所造成的损害。 我们是否应该始终将值与a绑定,以便可以限制在SQL注入中可以从数据库中提取的内容?这样在执行PDO时会增加PDO的安全性吗? 问题答案: 一个有两个问题。重要的是不要混淆它们 我们是否应该

  • 哈希集由哈希映射支持。从它的JavaDoc: 这个类实现了Set接口,由哈希表(实际上是一个HashMap实例)支持 在查看源时,我们还可以看到它们之间的关系: 因此,一个<code>哈希集 使用而不是,不是更有效吗?进一步考虑的是,如果环境允许使用而不是,我们是否应该完全放弃,直接使用。 触发这些想法的基本问题是以下情况:我有一组具有以下属性的对象: 大型对象集合 如何有效地检查集装箱? 我想到

  • 本文向大家介绍我们如何使用enum关键字在C#中定义变量类型?,包括了我们如何使用enum关键字在C#中定义变量类型?的使用技巧和注意事项,需要的朋友参考一下 C#枚举是值数据类型。枚举是一组命名的整数常量。使用enum关键字声明枚举类型。 以下是枚举的语法。 让我们来看一个例子。 以下是显示如何使用enum关键字定义变量类型的示例。 示例 输出结果