草庐IT

a_function_that_may_fail

全部标签

javascript - 构造函数 : var X = function (){}, var X = function X(){} 和 function X(){} 的区别

这个问题在这里已经有了答案:varfunctionName=function(){}vsfunctionfunctionName(){}(41个回答)关闭8年前。我现在正在调试别人的代码,当他在这两种模式下定义构造函数时,我感到很困惑。两者之间有什么特别之处吗?//constructor1varMyObject=function(){};//constructor2varMyObject=functionMyObject(){};另外,像这样创建一个函数有什么效果。functionMyObject(){};我只是在查看每个的特定用例。

javascript - AngularJS : Should service's boolean method return promise that resolves to true/false, 或者被解决/拒绝?

promise的使用模式仍然让我感到困惑。例如,在Angular应用程序中,我有一个服务usersService,方法是emailExists(email)。显然,它向服务器请求检查给定的电子邮件是否已经存在。让方法emailExists(email)返回在正常操作中解析为true或false的promise对我来说感觉很自然.如果只是我们有一些意外的错误(比如,服务器返回500:内部服务器错误,那么promise应该被拒绝,但在正常操作中,它被解析为相应的bool值。然而,当我开始实现我的异步验证器指令(通过$asyncValidators)时,我看到它想要解决/拒绝promise。

javascript - 直接在函数声明上使用 function.prototype.bind

为什么允许这样做?varf=function(){console.log(this.x);}.bind({x:1})();为什么这不是或更好,为什么我在这种情况下会出现语法错误?functionf(){console.log(this.x);}.bind({x:1})();那么,为什么我需要函数表达式语法来完成这项工作,有没有办法直接在函数声明上使用bind方法? 最佳答案 第二个示例有效,但语法略有偏差:将函数括在括号中。我不得不说我不完全确定为什么。好像没有parent也行吧?:P(functionf(){console.log

javascript - 代码挑战 : Create a class Foo that tracks the number of total object instances

我正在尝试解决工作应用程序的代码挑战,但我遇到了困难,非常感谢任何帮助。问题:创建一个Foo类,它有一个名为refCount的方法。在类或其任何实例上调用refCount应该返回存在的实例总数。示例:varf1=newFoo();f1.refCount();//shouldbe1Foo.refCount();//shouldbe1varf2=newFoo();f1.refCount();//shouldbe2f2.refCount();//shouldbe2Foo.refCount();//shouldbe2到目前为止我有这样的事情:functionFoo(){this.refCoun

javascript - 调试显示模块模式 : functions not in scope until called?

如果我在Chrome开发者工具中运行这段代码:vartest=(function(){varpublicFunction,privateFunction1,privateFunction2;privateFunction1=functionprivateFunction1(){returntrue;};privateFunction2=functionprivateFunction2(){returntrue;};publicFunction=functionpublicFunction(){privateFunction1();debugger;};return{publicFunc

javascript - 使用: and => for the return type with a TypeScript function?有什么区别

我有以下代码:///functionaddThemePrototypes(){vartemplateSetup=newArray();$.fn.addTemplateSetup=function(func,prioritary){if(prioritary){templateSetup.unshift(func);}else{templateSetup.push(func);}};}有人能告诉我为什么要用=>void来声明吗?interfaceJQuery{addTemplateSetup:(func:Function,priority:bool)=>void;}我想我对如何从java

javascript - 未捕获的类型错误 : Object prototype may only be an Object or null on ember-1. 0.0-pre.2

我从Ember开始,紧跟着这个tutorial.我从Ember.js网站下载了最后一个源代码,我有以下代码:HTMLTestapp.jsApp=Em.Application.create();App.ApplicationView=Em.View.extend({templateName:'application'});App.ApplicationController=Em.Controller.extend();App.Router=Em.Router.extend({root:Em.Route.extend({index:Em.Route.extend({route:'/'})}

javascript - 哪种方法更好 : function. apply(<this>, args) 或具有接受 <this> 作为参数的函数?

假设我有一个这样定义的函数A:functionA=function(myObject,someParams){myObject.save_some_data=someParams;myObject.processed=true;}然后我可以调用它并传递一个对象作为functionA(someObject,someParams)进行处理。不过,我可以用apply()转换这个例子:functionA=function(someParams){this.save_some_data=someParams;this.processed=true;}functionA.apply(someObj

javascript - Angular JS 错误 : $compile:tpload: Failed to load template:

所以我试图在我的指令中加载模板。该指令是可重用的。但是我无法加载模板。我有其他模板可以加载并正常工作。我得到的错误是:GET/ClassificationToolkitForGrails/classificationviewer.html404(NotFound)angular.js:8521Error:[$compile:tpload]Failedtoloadtemplate:classificationviewer.html包含指令的javascript文件:/****/varclassificationViewModule=angular.module('ald.classifi

javascript - Array.find(value) 返回值 'is not a function'

我正在尝试在AngularJS数组上使用JavaScript的find()函数。这是合法的,对吧...?这个非常简单的代码给我带来了一些问题。这是说$scope.names.find(name1)的返回值不是函数。TypeError:Name1不是函数if($scope.names.find(name1)!==name1){$scope.names.push(name1);}我也试过...if($scope.names.find(name1)===undefined){$scope.names.push(name1);}和if(!$scope.names.find(name1)){$s