草庐IT

super-jump

全部标签

javascript - 从 Angular 5 组件访问父类(super class)字段

我有一个包含组件通用功能的父类(superclass)。exportclassAbstractComponentimplementsOnInit{publicuser:User;constructor(publichttp:HttpClient){}ngOnInit():void{this.http.get('url').subscribe(user=>{this.user=user;});}}我有一个实现这个父类(superclass)的子类。@Component({selector:'app-header',templateUrl:'./header.component.html'

javascript - 在使用 Object.create 创建的对象中使用 super

今天早上我遇到了一个tweetfromŠimeVidas他提出了以下在对象字面量中使用super的可能性:letA={run(){console.log('Aruns');}};letB={run(){super.run();}};Object.setPrototypeOf(B,A);B.run();//Aruns这行得通,而且分配B.__proto__=A;似乎也行得通,在Firefox和Chrome中都是如此。所以我想我可以用Object.create做同样的事情:letA={run(){console.log('Aruns');}};letB=Object.create(A);B

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

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

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

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

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 - 更快的滚动事件? - 滚动后背景 "jumps"

我有一个小问题。我正在尝试做类似nikebetterworld.com的事情的视差背景。在我的第一次尝试中,我得到了一些有用的东西,但它可以更好地工作。当我滚动时,背景位置会改变。问题是它在滚动后几毫秒发生变化,所以我可以看到背景在滚动后如何“跳跃”。代码:var$w=$(window);functionmove($c){varscroll=$w.scrollTop();vardiff=$c.offset().top-scroll;varpos='50%'+(-diff)*0.5+'px';$c.css({'backgroundPosition':pos});}$w.bind('scr

javascript - 你如何在 JavaScript 中进行继承而不在子类的所有实例之间共享父类(super class)的同一个实例?

我注意到每个关于如何进行JavaScript继承的教程都是这样做的:SubClass.prototype=newSuperClass();但这将创建父类(superclass)的单个实例并在子类的所有实例之间共享它。问题是我想将参数传递给父类(superclass)构造函数,这些构造函数源自传递给子类的参数。在Java中,这将像这样完成:classSubClassextendsSuperClass{publicSubClass(Strings){super(s);}}我试过这样做:functionSubClass(args){this.constructor.prototype=new

javascript - 如何访问子类中 getter 的父类(super class)值?

在派生类中访问getter的super值似乎不起作用:classFoo{private_message:string="Hello,";publicgetMessage():string{returnthis._message;}}classBarextendsFoo{publicgetMessage():string{returnsuper.Message+"World";}}varsnafu:Bar=newBar();document.write(snafu.Message);//Expected:"Hello,World"//Actual:"undefinedWorld"如何正确

javascript - React/Redux + super 代理,第一次调用被终止

我正在编写一个react-redux应用程序,我在其中使用superagent在我的中间件中进行一些服务调用。我发现了一个非常奇怪的行为,即对我的搜索api的第一次调用总是被终止。我试过在调用第一个电话之前等待10-30秒,并记录过程中的每一步,但我似乎无法查明为什么会发生这种情况。我的Action创作者看起来像exportfunctiongetSearchResults(searchQuery){return{query:searchQuery,type:actions.GO_TO_SEARCH_RESULTS}}它在这里命中了中间件逻辑:vardefaultURL='/myServ

super 和原型(prototype)之间的Javascript区别

我是javaScript的新手,我正在做一些继承。我以为我知道原型(prototype)是什么,但后来我遇到了super方法。现在我不知道这两者之间的区别。我知道uber就像java中的super,仅此而已。但是原型(prototype)是困扰我的事情。如果您能给我一些使用这两者的简单示例,我将不胜感激。 最佳答案 uber只是DouglasCrockford在他的JavaScript继承示例中创建的一个糖方法,在使用JavaScript原型(prototype)继承的非常非常灵活的特性时,它应该有助于开发人员。nativeJava