jjzjj

Constructor

全部标签

Javascript 将可变参数传递给父类(super class)构造函数

将可变参数传递给父类(superclass)构造函数的最佳/推荐方法是什么?背景解释了我试图解决的问题。背景我正在将一些代码从Java移植到Javascript。Java的编码模式之一是函数重载。Java选择最佳匹配来确定要调用的函数。当函数是类构造函数时,这会变得很有趣。所以Java中的代码可能是publicclassMyParserextendsParser{publicintparse(Stringstr){super(str);...}publicintparse(Stringstr,intbase){super(str,base);...}}在Javascript中变成:cl

javascript - 如何包装构造函数?

我有这个JavaScript:varType=function(name){this.name=name;};vart=newType();现在我要添加这个:varwrap=function(cls){//...wrapconstructorofType...this.extraField=1;};所以我可以这样做:wrap(Type);vart=newType();assertEquals(1,t.extraField);[编辑]我想要一个实例属性,而不是类(静态/共享)属性。包装函数中执行的代码应该像我将其粘贴到真正的构造函数中一样工作。Type的类型不应改变。

javascript - 在 ES6 + babel 中使用 bluebird promise 导入类(构造函数)

假设我创建了一个node.js库lib.jsexportclassC{constructor(value,callback){callback(false,`Hello${value}`);}task(value,callback){callback(false,"returned"+value);}}重要的部分是类的构造函数需要接受回调,因为它处理数据库连接和文件I/O。如果我现在导入并使用库回调样式,一切都很好(请参阅下面的c1)。我真的很想promise我使用它的库,使对象构造更方便(实际上它是一大堆类和方法)。但是,我找不到在promise-safe中正确地new类的方法。im

javascript - 如何知道是否通过 super 调用了类构造函数?

如果我有这个:classHuman{constructor(){}}classPersonextendsHuman{constructor(){super();}}是否有可能知道是否通过Person类调用了Human的构造函数?我考虑过arguments.callee但它已被弃用。 最佳答案 检查实例是否属于特定子类很容易(但不明智):classHuman{constructor(){console.log(thisinstanceofPerson);}}要检查它是否是基类(而不是子类)的实例,您可以使用:Object.getPro

javascript - 如何设置在 console.log 中返回的 JavaScript 对象名称?

那么,这里的第一个问题-请保持温和。我正在与其他一些来自各种非Web编程背景的开发人员一起开发一个相当重的JavaScript项目,我们决定尝试在我们的JavaScript伪类中使用公共(public)和私有(private)方法和属性,纯粹是为了编码实践(即我们知道它没有实际优势或安全性)我们尝试了几种不同的方式来处理公共(public)和私有(private)(即使用局部范围的变量和函数以及用于公共(public)消费的特权方法)并且我们目前已经决定让我们的JavaScript类构造函数实际返回一个对象仅代表其公共(public)接口(interface),有效地隐藏了其他所有内容

javascript - 我可以使用 constructor.name 来检测 JavaScript 中的类型吗

我可以使用“constructor”属性来检测JavaScript中的类型吗?或者有什么我应该知道的。例如:vara={};a.构造函数名称;//输出“对象”或varb=1;b.构造函数名称;//输出“数字”或vard=newDate();d.构造函数名称;//输出“日期”而不是对象或varf=newFunction();f.构造函数名称;//输出“函数”而不是对象只有在参数上使用它时arguments.constructor.name;//像第一个例子一样输出对象我经常看到开发人员使用:Object.prototype.toString.call([])或Object.prototy

Javascript Prototype Chaining父类(super class)构造函数和方法调用

我是JavaScript世界的新手,在尝试原型(prototype)链继承时遇到了这个奇怪的问题。我有3个类(class)//classparentfunctionparent(param_1){this.param=param_1;this.getObjWithParam=function(val){console.log("valueinparentclass"+val);console.log("Constructorparameter:"+this.param);};};//classchildfunctionchild(param_1){this.constructor(pa

javascript - Javascript 构造函数有什么意义?

请仅针对Javascript提供您的想法!我知道类和经典继承,但不是很详细。据我所知,构造函数被用作其他对象的原型(prototype)。例如,我可以创建一个汽车构造函数并为其提供hondaCivic、toyotaCamry等对象。关于构造函数还有其他重要的事情我应该了解吗?此外,除了我已经说明的内容之外,构造函数的用途是什么?构造函数的优点/缺点是什么? 最佳答案 构造函数只是一个普通函数。它本身并没有什么特别之处。所有函数都有一个名为prototype的属性。如果你写varmyInstance=newMyFuction();Ja

javascript - 为什么要将 Something 分配给 Something.prototype.constructor?

我正在阅读有关Javascript原型(prototype)属性如何与继承一起工作的内容,然后开始查看Angular.js代码并提出了一些问题。首先,我读到原型(prototype)属性指向一个对象,该对象具有一个“构造函数”属性,该属性指向用于创建该对象的原始函数。例如://ThisistheconstructorfunctionShape(){this.position=1;}//TheconstructorpointsbacktotheoriginalfunctionwedefinedShape.protoype.constructor==Shape;原型(prototype)还

javascript - 使用自定义原型(prototype)实例化 JavaScript 函数

我使用以下函数根据参数数组在JavaScript中创建函数实例:varinstantiate=function(instantiate){returnfunction(constructor,args,prototype){"usestrict";if(prototype){varproto=constructor.prototype;constructor.prototype=prototype;}varinstance=instantiate(constructor,args);if(proto)constructor.prototype=proto;returninstance;