草庐IT

lua函数

全部标签

javascript - 如何在另一个自定义助手中调用一个自定义助手函数

我想在另一个辅助函数中使用一个辅助函数。在下面的代码中,如果姓氏包含“Finch”一词,我想突出显示它。我为此编写了帮助类。如果我们在hbs文件中使用,那么语法将是{{highlightname}}。但是如何使用它,因为我必须在另一个帮助类中使用它。下面是我的代码:Handlebars.registerHelper('fullName',function(person){returnperson.firstName+""+person.lastName;});Handlebars.registerHelper('highlight',function(person){varitem=(

javascript - 我们可以从 requirejs 中的模块导出多个非 AMD 函数吗?

如果我有一个名为old.js的非AMD模块,并且在这个脚本中我定义了两个函数f1和f2。我需要使用它们,如何导出两者?require.config({paths:{"jquery":"https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min",},shim:{"old":{deps:["jquery"],exports:["f1","f2"]}},urlArgs:"bust="+(newDate()).getTime()});这行不通。我会得到split错误。该文档没有提到多个(http://requirejs.org/

javascript - setTimeout 传递命名函数与匿名函数

关于MDNpageforwindow.setTimeout我找到这个例子,其中一个命名函数被传递给window.setTimeout:vartimeoutID;functiondelayedAlert(){timeoutID=window.setTimeout(slowAlert,2000);}functionslowAlert(){alert("Thatwasreallyslow!");}functionclearAlert(){window.clearTimeout(timeoutID);}在我维护的代码中,我遇到了这个例子的等价物,其中声明了一个匿名函数,因为它被传递给windo

javascript - 返回后定义函数

我正在阅读JohnPapa'sAngularJSstyleguide看到了thecode:functiondataService(){varsomeValue='';varservice={save:save,someValue:someValue,validate:validate};returnservice;////////////functionsave(){/**/};functionvalidate(){/**/};}您可以看到函数save和validate是在函数返回值之后定义的。这是如何运作的?它是否符合标准并适用于所有浏览器(例如,从IE6开始)?

javascript - React TypeError this._test 不是一个函数

由于我是JavaScript和React的新手,我真的很难找出正确的语法。这是我的问题:_handleDrop(files)应该调用函数_validateXML(txt)但实际上没有。我收到此错误UncaughtTypeError:this._validateXMLisnotafunction并且无法弄清楚原因。回调_handleDrop(files)工作正常。当我尝试这种语法_validateXML:function(txt)时,我在编译时立即收到错误消息。是因为ecmascript吗?importReactfrom'react';import'./UploadXML.scss';i

返回对象的javascript函数返回[object Object]

我的函数的预期输出是{"name":"bob","number":1},但它返回[objectObject]。我怎样才能达到预期的输出?functionmyfunc(){return{"name":"bob","number":1};}myfunc(); 最佳答案 哈哈这似乎是一个简单的误会。您正在返回对象,但是对象的toString()方法是[objectObject]并且它被freecodecamp控制台隐式调用。Object.prototype.toString()varo={};//oisanObjecto.toString

javascript - 在 $.each 函数中使用条件来创建数组

我想遍历数组的元素,如果条件为真,我想创建一个新数组。示例:我有一个名为Messages的数组,其元素是对象,我想检查id属性是否等于5。如果是,则创建一个仅包含该对象的新数组。messages=[{"id":10,"body":"hello!"},{"id":21,"body":"hola!"},{"id":5,"body":"ciao!"}];varmessage5=[];vardataObj={};$.each(messages,function(index,value){if(value.id==5){dataObj[index]=value;}});message5.push

javascript - 为什么 JSfiddle 和 Chrome console 对同一个函数返回不同的值?

我在JSfiddle中有以下代码。vara=1;functionfive(){this.a=5;console.log(a);//JSfiddleprintsthevalue1}five()但是当我在Chrome控制台中粘贴完全相同的代码时,函数five()打印5。为什么? 最佳答案 默认情况下,JSFiddle将您的代码包装在window.onload事件中,因此您实际上正在运行:window.onload=function(){vara=1;functionfive(){this.a=5;console.log(a);//JSf

javascript - 如何使用(this)访问Angular 2 http rxjs catch函数中的对象属性

在Angular2中使用新的http服务,我想对我的错误做更多的事情,而不仅仅是在控制台中抛出错误。不幸的是,我似乎无法从catch回调函数中访问我的对象属性。我的http服务调用:returnthis.http.get(this.apiUrl,options).map(this.extractData,this).catch(this.handleError)我的handleError回调fn:handleError(error){console.log(this)//undefined!if(error.status===401){this.router.navigate(['/l

javascript - 如何使用 array.map 函数不返回任何内容(空数组)

现在,如果检测到列表中的“Everything”,输出将变为[""]。预期输出:[]Copy.names=rule.names.map(function(x){if(x.name==='Everything'){return'';}else{returnx.name;}}); 最佳答案 使用Array.prototype.filter:Copy.names=rule.names.filter(function(x){returnx.name!=='Everything';}).map(function(x){returnx.name