草庐IT

structuring-gwt-modules-for-large

全部标签

javascript - 在 Javascript 中用 if 语句包装 For in 循环——遍历数组

JSLint一直提示这样的事情varmyArray=[1,2,3];for(varvalueinmyArray){//BLAH}说我应该把它包装在一个if语句中。我知道如果要遍历对象的属性,则需要将其包装起来,但在这里我应该在if语句中放入什么才能进行正确的过滤。此外,当我做类似的事情时for(vari=0;i它提示说我已经被定义了。除了使用不同的变量名外,我该如何防止这种情况发生? 最佳答案 JSLint提示了很多其实并不有害。在这种情况下,提示for...in是正确的,因为这是遍历数组的错误构造。这是因为您不仅会获得数字键,还会

javascript - 'setTimeOut' 在 JavaScript 'for' 循环中调用,为什么会失败?

这个问题在这里已经有了答案:AsynchronousProcessinsideajavascriptforloop[duplicate](6个答案)JavaScriptclosureinsideloops–simplepracticalexample(44个答案)关闭5年前。让我澄清一下我的问题。我不是在问如何让下面的代码工作。我知道您可以使用let关键字或捕获它自己的i值的iffe。我只需要说明在以下代码中如何访问值i。我阅读了以下博客文章,了解以下代码为何不起作用。Blogpostfor(vari=1;i作者声称代码将无法运行,因为我们将变量i作为引用而不是值传递。也就是说,不是每

Javascript for..in 遍历参数 ie.for(arg in arguments) 在 IE8 中不起作用,但在 Chrome 8 中有效

我遇到了这种奇怪的情况,其中foreach之类的javascript构造在IE中不起作用,但在FF中有效。不是所有的for..in只是这个特殊的函数不起作用。我会发布代码。在IE8中测试。还使用XHTMLDTD进行了测试。Test更新我发布了一个错误的问题,它在FireFox中有效但在IE8中无效,这是错误的。它在FireFox中也不起作用。实际上我从帖子JavaScriptequivalenttoprintf/string.format得到了这段代码. 最佳答案 首先,虽然arguments函数中可用的对象不是数组,它足够“类似数

javascript - jshint 错误 : Cannot find module 'underscore'

我的grunt任务似乎运行得非常好,但每次运行它时我都会收到此错误:Loading"jshint.js"tasks...ERROR>>Error:Cannotfindmodule'underscore'有什么办法可以找出为什么会这样吗?我可以看到/grunt-contrib-jshint目录位于/node_modules目录中。有什么原因找不到underscore模块吗?我试过运行npminstall但在运行grunt时我仍然遇到同样的错误。有什么想法吗?感谢您的帮助。 最佳答案 当您遇到找不到模块x错误时,有时可能会有所帮助的一件

javascript - JavaScript "for"中的奇怪事情

我正在使用jQuery,但我有一件我不明白的奇怪事情。我有一些代码:for(i=1;i“#some_button”,顾名思义-它们是一些按钮。单击时,他们应该弹出一个带有编号的框,对吗?但他们没有。如果有4个按钮,它们总是弹出“5”(按钮数+1)。为什么会这样? 最佳答案 它与JavaScript作用域有关。您可以通过添加一个函数并让该函数调用自身并传入i来引入另一个作用域,从而轻松解决这个问题:for(vari=1;i这会创建一个闭包-当内部函数可以访问调用该函数时不再存在的范围。参见thisarticle在MDC上获取更多信息。

javascript - GWT 减少编译后的 javascript 大小

我发现编译后的JavaScript的大小增长速度比我预期的要快。向我的项目添加几行Java代码可以增加几Kb的脚本大小。目前我编译的项目重1Mb。除了MVP(Activities&Places)、测试(JUnit)和日志记录之外,我没有使用任何外部库。我想知道是否有任何编码实践/建议可以使编译后的脚本尽可能小。我指的不是代码拆分,而是可以使编译后的JavaScript有效变小的编码技术或模式。非常感谢 最佳答案 GWT使用“按需付费”的设计理念,并且由于您不允许使用反射,编译器可以静态地证明(在逐个方法的基础上)一段代码是“可访问的

javascript - 错误 : $injector:modulerr Module Error with ui-router

我不知道是什么问题div#wrapper(ng-app="adminApp")....js/varadminApp=angular.module('adminApp',['ui-router']);如果我用varadminApp=angular.module('adminApp',[]);错误消失这是为什么?更新:从控制台添加图片 最佳答案 模块名称是ui-router但你需要注入(inject)ui.router而不是ui-routervaradminApp=angular.module('adminApp',['ui.route

javascript - 为什么 GWT 和 Script# 风格的框架没有成为主流?

使用GWT,我们可以用Java编写代码并将其转换为JavaScript代码。使用Script#,我们可以用C#编写代码并将其转换为JavaScript代码。听起来GWT和Script#将使Web开发人员免于JavaScript的痛苦。那么,为什么这些工具没有占据主导地位呢?为什么还有人致力于编写javascript代码? 最佳答案 多种原因,哪一个最重要因开发商而异。这里有两个:因为JavaScript是一种比Java/C#更好/更灵活/更强大/(在这里插入形容词)的语言人们不信任GWT/Script#生成的输出

javascript - 是否可以在 for 循环中引用匿名数组?

for(varnamein['dog','cat','cow']){alert(name);}这里的name返回数组的索引,但我不能引用它,因为它是匿名的。我知道我可以在循环外声明它,但在这里我想问一下是否有一种方法可以直接引用没有索引的名称。 最佳答案 ...不。没有,至少没有本地循环。但是,有ES5的forEach:['dog','cat','cow'].forEach(function(value,key){//dostuff});实际上是一样的。支持mostlyeverywhere,除了在旧的IE中:类似es5-shim的东

javascript - for 循环中的 Visual Studio JavaScript 代码格式化

VisualStudio2012中JavaScript的默认代码格式使用for循环执行此操作:for(vara=b;a注意b()、c()、(b)和(c)之后的空格>.删除这些空格的选项在哪里,或者VS是否只是有皱眉眨眼的恐惧症?); 最佳答案 使用Resharper.它是C#的出色工具,它还具有非常好的JavaScript支持-包括一个JSLint插件,它允许您强制执行JS代码约定/样式。虽然它不是免费的-但它会使您的代码更加一致且质量更高。 关于javascript-for循环中的Vi