草庐IT

编译构造

全部标签

javascript - 在 JavaScript 中更改构造函数

我尝试了一段时间来为一个对象切换构造函数,但我失败了。继续的代码将显示我需要的示例。谢谢。functionMe(){this.name="Dejan";}functionYou(){this.name="Ivan";}Me.prototype.constructor=You;somebody=newMe();alert(somebody.name);//**ItgivesDejan,andIamexpectingIvan** 最佳答案 Me.prototype.constructor属性只是Me.prototype的公共(publi

javascript - Handlebars ,避免编译(忽略)模板的一部分?

有没有办法告诉Handlebar编译器忽略模板block。我知道有\解决方案,例如:\{{is.ignored}}但是有没有什么东西可以做同样的事情,但是对于一个完整的block,比如:{{#eachitems}}{{display}}{{/each}}我相信使用类似{{#ignore}}{{/ignore}}的东西比在任何地方添加\会更好(而且可读性更高).我尝试使用block助手找到一些东西,或者自己构建一些东西,但我无法获得block内内容的非编译版本。 最佳答案 不幸的是,Cyril的回答似乎过时了?我在Handlebars

javascript - 在构造函数*内部*分配原型(prototype)方法——为什么不呢?

在风格上,我更喜欢这种结构:varFilter=function(category,value){this.category=category;this.value=value;//productisaJSONobjectFilter.prototype.checkProduct=function(product){//runsomechecksreturnis_match;}};对于这个结构:varFilter=function(category,value){this.category=category;this.value=value;};//varFilter=function

javascript - 如何用新的 Blob 构造函数替换已弃用的 BlobBuilder?

由于Blobbuilder已被弃用,而且我最近决定使用新的面部识别API,因此我很难切换到“blob”。functiondataURItoBlob(dataURI,callback){//convertbase64torawbinarydataheldinastring//doesn'thandleURLEncodedDataURIsvarbyteString;if(dataURI.split(',')[0].indexOf('base64')>=0){byteString=atob(dataURI.split(',')[1]);}else{byteString=unescape(da

javascript - 无法构造 'Blob' : The 1st argument provided is either null, 或无效的 Array 对象。

我今天开始使用filesaver.js。我创建了以下函数:functionsaving(){varblob=newBlob(final_transformation,{type:"text/plain;charset=utf-8"});saveAs(blob,"helloworld.txt");}但是当我调用该函数时,我得到“无法构造‘Blob’:提供的第一个参数要么为空,要么为无效的Array对象。”有什么想法吗? 最佳答案 由于您不会告诉我们final_transformation是什么,我们必须在没有上下文的情况下进行猜测。试

javascript - 为什么在 JavaScript 中函数既是构造函数又是对象?

我最近对此进行了大量研究,但尚未得到真正可靠的答案。我在某处读到,当JavaScript引擎遇到函数语句时会创建一个新的Function()对象,这让我相信它可能是一个对象的子对象(因此成为一个对象)。所以我给DouglasCrockford发了邮件,他的回答是:Notexactly,becauseafunctionstatementdoesnotcallthecompiler.Butitproducesasimilarresult.此外,据我所知,您不能在函数构造函数上调用成员,除非它已被实例化为一个新对象。所以这是行不通的:functionmyFunction(){this.myP

javascript - 正在编译 less modifyVars 时加载图标

我在前端使用window.less.modifyVars(modified_variables);来反射(reflect)变化。我想在less编译时显示loadingicon。有什么方法可以检查less是否已经开始编译并完成。 最佳答案 在less.jsGitHub存储库中,我提到了他们如何在testspec中使用modifyVars().您可以显示加载图标,调用modifyVars方法,然后使用.then()隐藏加载图标。//Showloadingiconless.modifyVars({var1:"green",var2:"pu

javascript - 从构造函数返回什么?

如果我在构造函数中返回一些值或对象,var会得到什么?functionMyConstroctor(){//whatincasewhenreturn5;//whatincasewhenreturnsomeObject;}varn=newMyConstroctor();在这两种情况下n会得到什么?其实是一道问答题,答案是什么?自定义对象构造函数返回什么?a)新实例化的对象b)undefined-构造函数不返回值c)无论返回语句是什么d)无论返回语句是什么;如果没有return语句,则为新实例化的对象 最佳答案 简答构造函数返回this对

javascript - 使用 Gulp 基于 Handlebars 模板编译 partials 和 markdown

我这里有一个名为tpage.hbs的Handlebars模板:Title{{>head}}{{>home-header}}{{{mdcontents}}}head和home-header是局部的。我有一个Markdown文件文件夹,我想根据这个模板制作HTML页面,在模板中mdcontents的位置添加.md文件。我有以下Gulpfile:vargulp=require('gulp');varhandlebars=require('gulp-compile-handlebars');varHB=require('Handlebars');//IknowIdon'tneedtwoHand

javascript - 这个函数类似于构造函数吗?

functioncatRecord(name,birthdate,mother){return{name:name,birth:birthdate,mother:mother};}我对构造函数的理解是一个用于构建对象的函数。这个catRecord函数算作构造函数吗? 最佳答案 不,您提供的函数返回一个没有类型信息的新关联数组。您所追求的构造函数是这样的:functionfixedCatRecord(name,birthdate,mother){this.name=name;this.birthdate=birthdate;this.