草庐IT

Apply-Templates

全部标签

javascript - 为什么构造函数中需要apply()函数

functionSet(){//Thisistheconstructorthis.values={};this.n=0;this.add.apply(this,arguments);//Allargumentsarevaluestoadd}//Addeachoftheargumentstotheset.Set.prototype.add=function(){/*Codetoaddpropertiestotheobject'svaluesproperty*/returnthis;};这是“Javascript:权威指南”中用于创建“Set”类的代码的开头。我试图合理化apply()的必

javascript - 在 JavaScript 中使用 call() 或 apply() 返回值

有没有办法在调用call()或apply()时获取函数的返回值?我的场景:我有一个函数可以与apply()函数配合使用。在对象构造函数上:varsomeObject=newSomeObject({NameFunction:"MakeNames"});在对象方法的循环中:varname="";for(vari=0;iMakeNames函数:functionMakeNames(data){returndata.FirstName+""+data.LastName;}那个varname保持为空,因为apply没有从函数返回任何值。请注意,我确信该函数已被调用并且参数已成功传递。请不要告诉我直

javascript - ES6 类中的 constr.apply(this, args)

一段时间以来,我一直在使用以下函数来创建未知类的实例:Kernel.prototype._construct=function(constr,args){functionF(){constr.apply(this,args);//EXCEPTION!}F.prototype=constr.prototype;returnnewF();};如果我使用原型(prototype),一切正常:functionPerson(name,surname){this.name=name;this.surname=surname;}varperson=Kernel._construct(Person,[

javascript - Math.min.apply 为 null 返回 0

我想从数组中获取最小值。如果数据包含null值,Math.min.apply为null值返回0。请看thisJSFiddleexample.即使数组中存在null值,我如何获得真正的最小值?代码(与JSFiddle示例中的相同):vararrayObject=[{"x":1,"y":5},{"x":2,"y":2},{"x":3,"y":9},{"x":4,"y":null},{"x":5,"y":12}];varmax=Math.max.apply(Math,arrayObject.map(function(o){returno.y;}));varmin=Math.min.apply

javascript - Array.apply(null, Array(x) ) 和 Array(x) 之间的区别

到底有什么区别:Array(3)//andArray.apply(null,Array(3))第一个返回[undefinedx3]而第二个返回[undefined,undefined,undefined]。第二个可以通过Array.prototype.functions链接,例如.map,但第一个不是。为什么? 最佳答案 有一个区别,一个非常重要的区别。Array构造函数either接受一个数字,给出数组的长度,并创建一个具有“空”索引的数组,或者更准确地说,长度已设置,但数组实际上并不包含任何内容Array(3);//create

javascript - Vue 资源 - plugin.apply 不是函数

我有一个用Vue1构建的分页组件,为此我从Laravel分页接收数据:Novideosfoundfor"{{query}}""importeventHubfrom'../events.js'exportdefault{props:['query'],data(){return{videos:[],meta:null,showPagination:false,zeroVideos:false,}},methods:{getVideos(page){this.$http.get('/search/videos?q='+this.query+'&page='+page).then((resp

javascript - 如何向 .apply() 方法添加回调?

在我的代码中,我有一组函数调用。我遍历这些调用并使用.apply()调用它们。问题在于,如果新函数的调用花费了任何时间,循环将.apply()并在前一个函数完成之前调用下一个函数。>.functionsomeFunc(element,calls){if(calls.length){fn=calls[0];calls.shift();fn.apply(element,args);someFunc(element,calls);}}因此,如果在应用函数上有一个回调,那么它可以按照我想要的方式工作。即functionsomeFunc(element,calls){if(calls.lengt

javascript - 为什么 Closure 在使用 function.apply 时不对参数进行类型检查?

见下文/***@param{string}a*@param{string}b*/varf=function(a,b){//...}/***@param{string}a*@param{boolean}c*/varh=function(a,c){f.apply(this,arguments);//nocompileerrorf.apply(this,[a,c]);//nocompileerrorf.call(this,a,c);//compileerror:doesnotmatchformalparameter}为什么Closure只在使用call而不是apply时报错?有没有一种方法可

javascript - meteor : wait until all templates are rendered

我有以下模板代码{{#eachthis}}{{>listItem}}{{/each}}{{username}}我想在呈现所有“listItem”后执行代码。其中大约有100个。我尝试了以下Template.home.rendered=function(){//isthiscalledonceallofits'subviews'arerendered?};但它不会等到所有View都加载完毕。了解何时加载所有subview模板的最佳方式是什么? 最佳答案 我是这样处理的:client/views/home/home.html{{#ifi

javascript - Angular : Selectively compile templates

我知道ng-non-bindable允许给定元素及其子元素不被编译为模板。它似乎被设计为根据需要在整个模板中穿插。有没有办法告诉Angular不要处理给定的元素,而是在其中“戳洞”并允许处理选定的子元素?例如,我很想能够做这样的事情:{{2+2}}{{2+2}}并让它输出:{{2+2}}4我知道ng-non-bindable甚至不允许处理ng-bindable,即使它存在。但是,是否存在允许像我所表达的那样处理模板的方法?更彻底地说,我理想的解决方案是在找到ng-bindable之前不会处理任何Angular,而不仅仅是大括号表达式。例如:{{n+2}}{{n+2}}会导致:{{n+2