草庐IT

ES一对多建模

全部标签

javascript - 在 ES6 之前的 Typescript 中实现 Iterator<T> 的推荐方法

这个问题在这里已经有了答案:typescript:makeclassobjectsiterable(3个答案)关闭5年前。我有一个项目,其中包含许多理想情况下会实现Iterable的类和/或Iterator接口(interface)。但是我似乎找不到这些接口(interface)的标准TypeScript定义(例如在typescript-collections或一些类似的包中)。我知道这些在ECMAScript6中通过Symbol.iterator有所标准化。机制,但我的目标是ECMAScript5,并且在可预见的future将保持不变。我能否以某种方式获得这些接口(interface

javascript - 对象方法上的 setTimeout - ES5 绑定(bind)或关闭?

假设我正在使用HTML5Canvas制作一些动画。如果我正在寻找动画对象的方法,这将是更可取的,性能明智的(假设我不关心IE8):setTimeout(this.render.bind(this),15);或varself=this;setTimeout(function(){self.render()},15);我的特殊案例还不够强烈,无法真正在视觉上产生影响;我只是想找出最佳实践。我认为用bind创建一个新函数比创建一个闭包的开销要小,但我想请教专家。 最佳答案 JavaScript性能问题很棘手,因为各种引擎的性能特征大相径庭

javascript - Ember.js:如何为这个例子建模?

我想弄清楚为该项目建模的正确Ember.js方法是什么,例如。需要什么模型、路线和Controller。IhavestartedajsBintoworkfrom.我的要求可以安全地减少到:项目及其选项项目有一系列选项选项有自己的属性项目具有仪表板将使用的其他属性(除了选项)仪表板仪表板没有自己的任何数据仪表板需要观察所有项目和选项,并更新对其属性的分析导航几乎没有这将出现在一个“页面”上,但将来可能会添加少量页面/弹出窗口我希望能够保存和重新填充给定状态(例如,选定选项ID的列表)数据数据将通过一次json调用加载一次应用程序逻辑将在Ember中单独在客户端完成——业务逻辑没有ajax

javascript - ES6 继承 : uses `super` to access the properties of the parent class

Javascript的super关键字,当我在Chrome、Babel、TypeScript上运行代码时,我得到了不同的结果。我的问题是哪个结果是正确的?规范的哪一部分定义了这种行为?以下代码:classPoint{getX(){console.log(this.x);//C}}classColorPointextendsPoint{constructor(){super();this.x=2;super.x=3;console.log(this.x)//Aconsole.log(super.x)//B}m(){this.getX()}}constcp=newColorPoint();

javascript - 尝试使用面向对象的 javascript 进行建模

我对整个面向对象的范式还很陌生。我正在尝试为某个游戏中的Angular色建模,你有不同的级别、类别和很多设备选择等等。我最终的目标是创建某种“梳妆台”,玩家可以在其中打开网站,试穿一些装备,看看它如何影响他们的参数,花费多少等等。我已经对主要部分进行了编程(here),但这是我使用html、css和javascript进行的第一件工作,目前只是一团糟。这次我想好好开始:)假设我有一个我们将要模拟的Angular色的对象:varLord=function(){this.Level=1;this.Gender='Male';this.Faction='Knight';this.Attack

javascript - Google Canary 浏览器是否支持 ES6 的生成器?

我需要测试/工作属于ES6草案的生成器。要继续工作,我需要一个浏览器(在我的例子中)。由于GoogleCanary严格针对开发人员,所以它现在是否支持生成器?我的操作系统是Windows7。 最佳答案 是的,在旗帜后面。另见featuredashboardentry和V8bug.导航到chrome://flags/#enable-javascript-harmony以启用它。 关于javascript-GoogleCanary浏览器是否支持ES6的生成器?,我们在StackOverflo

javascript - 使用 ES6 "Cannot resolve symbol"语法时为 `import`

Here给出了如何从模块导入某些类的示例:import{ModalContainer,ModalDialog}from'react-modal-dialog';但是,PhpStorm(最新的EAP)给我一个错误:我使用npminstallreact-modal-dialog安装了这个包,它存在于node_modules中。等效的var{ModalContainer,ModalDialog}=require('react-modal-dialog');工作正常。 最佳答案 我在设置React项目时遇到了这个问题,我所做的只是下载导入的

javascript - 如何使用 KARMA 对 React JSX ES6 代码进行单元测试?

我用ES6编写了我的React应用程序。现在我也想用ES6编写我的测试。所以这里的挑战是配置karma。与谷歌一起,我用karma.config.js走到了这一步(我省略了配置文件中相同的部分!):...files:['../node_modules/karma-babel-preprocessor/node_modules/babel-core/browser-polyfill.js','../app/**/*.jsx','../test/**/*.jsx'],preprocessors:{'app/**/*.jsx':['react-jsx','babel'],'test/**/*

javascript - ES6 类和 module.exports

最近我在nodeJS实现中看到了这种模式,其中我们的模块有以下代码:classFoo{bar(){console.log('bar');}}module.exports=Foo;然后当我做一个require最后说new来创建类的一个实例。varFoo=require(./foo);varmyFoo=newFoo();myFoo.bar();根据我的说法,这种模式将在每次调用时继续创建Foo类的多个实例。另一种模式可能是我在foo.js中习惯的模式。module.exports={bar:function(){console.log('bar');}};然后我只需要调用bar。varfo

javascript - 如何在 ES6 中获取类函数的引用?

抱歉,如果问题太简单,但我在这里遗漏了一些东西。刚刚切换了一个ES5模块,看起来像:module.exports={func1:function(a,b){...},func2:function(a,b){...}};到一个看起来像这样的ES6类:exportdefaultclass{func1(a,b){...}func2(a,b){...}}一切都很好:在这两种情况下,我都可以exportmodfrom'module';并调用mod.func1(a,b)和mod。func2(a,b).但是,我有一个函数接收要调用的模块函数:varcaller=function(func,val1,