草庐IT

你应该

全部标签

javascript - 我应该为新的 Angular 应用程序使用 angular-seed 还是 yeoman?

我对应该以何种方式创建新的AngularJS应用程序感到有点困惑。据我所知,似乎有几种方法可以做到这一点,要么使用Angular种子:https://github.com/angular/angular-seed或自耕农-http://www.sitepoint.com/kickstart-your-angularjs-development-with-yeoman-grunt-and-bower/我找不到关于为什么选择一种方法而不是另一种方法的任何资源。生成的目录结构对我来说看起来很不一样。说主要区别之一是angular-seed不使用开箱即用的Bower或Grunt,而yeoman

javascript - 我应该担心 "window is not defined"JSLint 严格模式错误吗?

这不会在严格模式下通过JSLint:"usestrict";(function(w){w.alert(w);}(window));来自jslint.com的错误看起来像这样:第4行字符3的问题:未定义“窗口”。}(window));隐式全局:窗口4我需要告诉JSLint忽略错误,还是我真的做错了什么? 最佳答案 尝试添加以下内容:/*jslintbrowser:true*//*globalwindow*/(或选中假设浏览器复选框)。第一行添加一般浏览器支持。第二行将window声明为全局变量。来自文档:Thebrowseroptio

javascript - JavaScript 库是否应该使用已弃用的注解?

显然,何时弃用以及何时删除取决于开发人员,但我想知道如何警告开发人员某个JavaScript函数已被弃用?一些流行语言(Java、C#、Python)以某种形式支持语言级别的弃用。不过,对于JavaScript,我找不到任何标准方式让开发人员可以指示某个函数已被弃用(在代码中)。我能做的最好的就是遵循(大量)发行说明。例如,grepjQuery1.8的完整源代码显示了最少的内联注释:#curlhttp://code.jquery.com/jquery-1.8.0.js|grep-idepre//jQuery.support.boxModelDEPRECATEDin1.8sincewed

javascript - 我们应该验证 JavaScript API 中的方法参数吗?

我正在开发一个将由第3方开发人员使用的JavaScript库。API包括具有此签名的方法:函数doSomething(arg1,arg2,选项)arg1、arg2是“必需的”简单类型参数。options是一个包含可选参数的哈希对象。您是否建议验证:-参数类型是否有效?-选项属性是否正确?例如:开发人员没有错误地通过onSucces而不是onSuccess?为什么像prototype.js这样的流行库不验证? 最佳答案 您有权决定是制作“防御性”API还是“契约性”API。在许多情况下,阅读库的手册可以让用户清楚地知道他应该提供符合这

javascript - 即使忘记了 `new`,我什么时候应该自动创建一个对象?

假设我有以下对象构造函数:functionFoo(bar){this.bar=bar;}如果我在没有new关键字的情况下在全局范围内运行函数,那么bar将被设置在调用Foo()的任何范围内在:varfoo=Foo(42);console.log(bar);//42console.log(foo.bar);//ERROR所以我的想法是做这样的事情:functionFoo(bar){if(!(thisinstanceofFoo)){//returnaFooobjectreturnnewFoo(bar);}this.bar=bar;}那样的话,如果我执行newFoo(42)或Foo(42),

javascript - componentDidMount 是否应该在 Enzyme 中以浅层渲染运行?

根据我的理解和到目前为止我在各种答案中所读到的内容,并非所有生命周期方法都应该以浅层渲染运行。特别是componentDidMount但是,我注意到当我这样做的时候beforeEach(function(){fakeComponentDidMount=sinon.stub(Component.prototype,'componentDidMount');fakeComponentDidMount.callsFake(function(){});wrapper=shallow();});afterEach(function(){fakeComponentDidMount.restore(

javascript - 数据排序应该在客户端还是在服务器端完成?

我从服务器获取数据并想在客户端使用GWT显示它。GWT不是这里的问题,您可以通过Ajax调用替换GWT,或者您可以将其转换为真正的应用程序而不是Web应用程序。排序是在服务端完成还是在客户端使用JavaScript在收到数据后显示数据之前完成? 最佳答案 每种方法都有其优点和缺点:如果需要分页,又不想把全部数据下载到客户端,那么就必须在服务端进行排序(否则客户端只能对当前已有的行进行排序,会导致结果错误,如果您按不同的列重新排序)在服务器上排序速度更快(如:您可以每秒排序更多行),但如果您必须同时为10000个客户端提供服务,这可能

javascript - 我应该为我的新网络应用程序使用 Google Web Toolkit 吗?

我想创建一个数据库支持的交互式AJAXwebapp,它有一个自定义(特定类型的事件,编辑)日历系统。这将涉及大量的JavaScript和AJAX,我想到了用于界面的GoogleWebToolkit和用于服务器端的RubyonRails。GoogleWebToolkit可靠且优秀吗?如果选择GoogleWebToolkit,会有哪些隐患?可以在服务器端轻松地将它与RubyonRails结合起来吗?或者我应该尝试直接使用像jQuery这样的JavaScript库吗?除了一些HTML之外,我没有Web开发经验,但我是一名经验丰富的程序员(c++、java、c#),我想在此项目中只使用免费工具

javascript - 我什么时候应该用首字母大写来命名事物?

我一直想知道何时使用首字母大写而不是驼峰式大小写的标识符(例如,函数)。我总是像这样用驼峰式大小写我的JS:functiondoStuff(){}varsimpleVar='somestuff',myAry=[],myObj={};...但我知道我应该用首字母大写来命名一些东西。我只是不知道这条规则何时适用。希望有人能让我更清楚一些。 最佳答案 根据《Javascript:thegoodparts》这本书,当你需要通过“new”关键字构造对象时,你应该只将函数名的第一个字符大写。这称为“构造函数调用模式”,一种继承方式。

javascript - 什么时候应该在 JavaScript 中使用 outerHTML?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭5年前。Improvethisquestion何时应该使用innerHTML和outerHTML之间有什么区别。您将如何最好地实现outerHTML来替换或添加内容?