草庐IT

Prototype

全部标签

javascript - 调用基类函数——JavaScript中的类继承

请查看以下示例:MyBaseClass=function(a){this.a=a;};$.extend(MyBaseClass.prototype,{init:function(){console.log('Iaminitializingthebaseclass');}});MyChildClass=$.extend(MyBaseClass,{init:function(){MyBaseClass.prototype.init();console.log('Iaminitializingthechildclass');}});var=newMyChildClass();var.init

javascript - 常规推送和 Array.prototype.push.apply 之间有什么区别

我不太明白下面两行代码的区别。在我的代码中,带有“应用”的行按照我想要的方式工作,而带有常规推送的行则没有。那么当这两个都被执行时到底发生了什么://thisonedoesnotworkthewayiwantitto$scope.items.push(result.data.stuff)//thisoneworks!Array.prototype.push.apply($scope.items,result.data.stuff);编辑:抱歉造成混淆,我修复了它,以便它具有“推送”方法 最佳答案 新1.将数组推送到项目上。$scop

JavaScript 原型(prototype)函数没有覆盖原来的函数

当我接触原型(prototype)的概念时学习javascript。我成功地向cat类添加了新方法,但未能覆盖原始的talk方法。functioncat(name){this.name=name;this.talk=function(){alert(this.name+":I'magirl!")}}cat.prototype.talk=function(){alert(this.name+":I'madude!")}cat1=newcat("felix")cat1.talk()为什么这不提醒新文本? 最佳答案 ‘functionca

javascript - 在 Javascript 中访问私有(private)成员的更好方法

在阅读了一些关于Javascript的prototypicalinheritancemodel之后,我从改变了构建类的风格varSome_Class=function(){this.public_method=function(){};(function(){//constructor}).call(this)}到varSome_Class=function(){(function(){//constructor}).call(this)}Some_Class.prototype.public_method=function(){};虽然我知道这是一个很好的做法,但我不能再从公共(pu

javascript - 将 Javascript getter/setter 复制到另一个原型(prototype)对象

//BaseclassvarBase=function(){this._value='base';};Base.prototype={constructor:Base,//ByfunctiongetValue:function(){returnthis._value;},//Bygettergetvalue(){returnthis._value;}};//SubclassextendsBasevarSub=function(){this._value='sub';};Sub.prototype={constructor:Sub};//PassovermethodsSub.protot

javascript - 函数的正确原型(prototype)链

以下程序的正确输出(按照ECMA标准表示正确)是什么?functionnl(x){document.write(x+"");}nl(Function.prototype);nl(Function.prototype.prototype);nl(Function.prototype.prototype==Object.prototype);nl(Function.prototype.prototype.prototype);Chrome和IE6一致的说法是:functionEmpty(){}nullforChrome/undefinedforIE6false然后崩溃。Mozilla输出:

JavaScript 原型(prototype)仅限于函数?

o.prototype={...}只有当o是一个函数时才有效。假设我有以下代码conf={a:2,b:4};conf.prototype={d:16}conf.a和conf.b正常并返回正确的值。但是conf.d没有返回16,而是未定义。是否有任何解决方案很糟糕,基于原型(prototype)的泛化也可以应用于这些类型的对象。 最佳答案 您混淆了可用于ConstructorFunctions的prototype属性和内部[[Prototype]]属性。所有对象都有这个内部[[Prototype]]属性,只有new当您使用构造函数调用

javascript - 如何正确地将 jQuery 插件导入 Node.JS?

背景我是Node.JS的新手,但对JavaScript和jQuery非常有经验。我通过npminstalljquery安装jQuery没有问题,但是,在代码中引用插件是另一个挑战。我已经查看了thissimilarStackOverflowquestion,并且该解决方案似乎有效,但在我看来,每次需要插件时实例化“假”浏览器窗口并注入(inject)基于jQuery插件的函数可能不是最有效的方法。对我来说失败的特定插件linq.js(是的,我知道jslinq可通过npm获得,但它与linq.js不同!)。注意:我所指的插件不依赖于任何DOM元素;在我的例子中,它只是通过各种数据函数运行

Javascript继承思想(二)

好吧,我第一次试图解释我在做什么的尝试惨遭失败。我基本上是在复制Crockford的Object.create(),除了私有(private)变量。如果您在此处查看已接受的答案Howtoinheritfromaclassinjavascript?,你会看到Object.create作为最后一个模式,我认为它更符合Javascript的原型(prototype)性质(对象产生对象)而不是模拟经典继承(类产生对象)。如果您查看维基百科关于基于原型(prototype)编程的文章(http://en.wikipedia.org/wiki/Prototype-based_programming

javascript - 如何在 Javascript 中制作自定义对象?

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Howto“properly”createacustomobjectinJavaScript?很抱歉,如果之前已经回答过这个问题,但我对在Javascript中创建自定义对象方面提供的选择数量有点不知所措。我不确定它们各自的优点或缺点,或者它们是否完全不同。以下是我发现的一些构造对象的不同方法:1:新对象person=newObject()person.name="TimScarfe"person.height="6Ft"person.run=function(){this.state="running"th