草庐IT

Javascript - 获取函数(方法)的类所有者

有没有办法知道哪个类拥有一个函数?示例:functionglobalFunc(){//alertMyObject}functionMyObject(){}MyObject.prototype.test=function(){globalFunc();}varo=newMyObject();o.test();//alertMyObject现在我正在使用这个解决方法:functionglobalFunc(){alert(globalFunc.caller.__class__);}functionMyObject(){}MyObject.prototype.test=function(){g

javascript - John Resig 的简单类实例化和 "use strict"

引用:http://ejohn.org/blog/simple-class-instantiation///makeClass-ByJohnResig(MITLicensed)functionmakeClass(){returnfunction(args){if(thisinstanceofarguments.callee){if(typeofthis.init=="function")this.init.apply(this,args.callee?args:arguments);}elsereturnnewarguments.callee(arguments);};}我想知道是否有

javascript - React Context 和单独的类

我已经放弃了让mt了解Redux的希望(我是React的新手),并且看到React的Alpha版本提供了一个新的Context。所以我正在尝试学习它,我的目标是,我有一个导航栏,我想在我的上下文中响应一个状态,{isAuthorised:false}。我正在关注thisguysvideo:但他将所有代码都放在一个文件中。我正努力做到“正确”。我所做的是创建一个名为“context”的文件夹,并在其中创建一个名为provider.jsx的jsx。importReact,{Component}from'react';exportdefaultclassMyProviderextendsCo

javascript - 在 Fabric.js 中,如何修改对象类以便所有子类都具有新的自定义属性?

我正在寻找一种方法来扩展具有自定义属性的基础fabric.Object类,我可以保存到JSON并从JSON加载,这将一直传播到各种子类。特别是我想存储一个深度属性,这样当我从JSON加载对象时,我将能够为对象添加适当的视差。我想解决方案将包括修改fabric.Object.prototype。但我仍在学习如何使用原型(prototype)。以下是我尝试过的一些例子:http://www.sitepoint.com/fabric-js-advanced///createarectangleobjectvarrect=newfabric.Rect({left:100,top:100,fil

javascript - 闭包事件委托(delegate) - DOM 父级上的事件监听器,涵盖给定类的子级/后代

在jQuery中,您可以执行以下操作:$('#j_unoffered').on('click','.icon_del',function(){...这会在元素j_unoffered上放置一个处理程序,如果单击具有类icon_del的任何后代元素,该处理程序就会触发。此外,它适用于任何随后创建的icon_del元素。我可以在点击元素本身的Closure中正常工作。goog.events.listen(goog.dom.getElement('j_unoffered'),goog.events.EventType.CLICK,function(e){...如何在Closure中指定父事件目

javascript - 通过实例方法修改类的所有成员

在JavaScript中,是否可以在影响其所有兄弟对象的对象上调用实例方法?例如,假设我有以下类(class):functionThing(){this.active=false;}Thing.prototype={constructor:Thing,activate:function(){this.active=true;},deactivate:function(){this.active=false;}};我是否可以创建一个activateAll方法来激活类Thing的所有实例?我需要this.active成为一个实例变量。 最佳答案

javascript - 是否可以从 JavaScript 中的 ECMAScript 6 类继承旧式类?

在Node.js4.2.1上运行以下代码时:'usestrict';varutil=require('util');classMyClass{constructor(name){this.name=name;}}functionMyDerived(){MyClass.call(this,'MyDerived');}util.inherits(MyDerived,MyClass);vard=newMyDerived();我收到以下错误:constructor(name){^TypeError:Classconstructorscannotbeinvokedwithout'new'我想知道

javascript - 在 javascript 正则表达式字符类中转义正斜杠?

我有一个正则表达式测试数字(0-9)和/或正斜杠(/)。它看起来像这样:/^[0-9/]+$/i.test(value)现在我相信这是正确的,但eclipsejavascript验证器不同意:Syntaxerrorontoken"]",deletethistoken我想这是因为分隔符/定界符是/并且eclipse“认为”正则表达式已完成(因此]将是意外的)。我们可以通过像这样转义/来满足eclipse:/^[0-9\/]+$/i.test(value)请注意,这两个版本都适用于我。我的问题是:据我所知,我不需要专门在该范围内转义正斜杠。它可能是特定情况(例如,对于javascript,

javascript - JSDoc 3 文档构造函数/类参数

如何记录作为参数传递的构造函数(函数)?示例:/**@class*/functionA(){}/***@param{Function}aConstructor*/functioncreateA(aClass){returnnewaClass();}如您所见,我可以指定它是一个函数。但是,我无法指定该函数将创建哪个对象。有什么方法可以记录下来吗?谢谢。 最佳答案 Google及其闭包建议使用{function(new:type)}作为类型描述。我假设,一个人可以使用这样的东西(我在AMD上使用它):/**@param{function

javascript - 为什么 immutable.js 类不需要 "new"?

例如,这是非常好的代码。(风格为ES6)import{List}from'immutable';console.log(List());//List[]然而,这失败了。classFoo{}Foo();//TypeError:Cannotcallaclassasafunction此外,这也失败了。classFooextendsList{}Foo();//TypeError:Cannotcallaclassasafunction 最佳答案 看起来immutable的魔力发生在他们对转译器的自定义插件中here.他们基本上是在创建自己的c