草庐IT

function-prototypes

全部标签

javascript - 构造函数模式和原型(prototype)模式的区别

因此,我正在努力思考创建对象的不同方法。我遇到了用于创建对象的原型(prototype)模式。现在我在下面写了两个函数,但我看不出两者之间的功能区别是什么?什么时候使用构造函数模式,什么时候使用原型(prototype)模式?构造器模式functionFruit(){}Fruit.color="Yellow",Fruit.fruitName="Banana",Fruit.nativeTo="SomeValue"原型(prototype)模式functionFruit(){}Fruit.prototype.color="Yellow",Fruit.prototype.fruitName=

javascript - 在 IE 中将函数添加到 Array.prototype 会导致它作为元素被插入每个数组

我在项目的开头将以下polyfill添加到Array:if(!Array.prototype.find){Array.prototype.find=function(predicate){if(this===null){thrownewTypeError('Array.prototype.findcalledonnullorundefined');}if(typeofpredicate!=='function'){thrownewTypeError('predicatemustbeafunction');}varlist=Object(this);varlength=list.leng

javascript - Javascript原型(prototype)继承和对象属性阴影

varperson={name:"dummy",personal_details:{age:22,country:"USA"}};varbob=Object.create(person);bob.name="bob";bob.personal_details.age=23;console.log(bob.personal_details===person.personal_details);//true:sinceitdoesnotshadowobjectofprototypeobjectconsole.log(bob.name===person.name);//false:since

Javascript arguments.sort() 抛出错误 sort is not a function

只是想知道为什么我在使用以下简单的JavaScript函数时会出错functionhighest(){returnarguments.sort(function(a,b){returnb-a;});}highest(1,1,2,3);错误消息:TypeError:arguments.sort不是函数。我很困惑,因为它是一个数组(我认为)。请帮助并解释原因。非常感谢 最佳答案 因为arguments没有sort方法。请注意arguments不是Array对象,它是一个类似数组的Argumentsobject.但是,您可以使用Array

javascript - 将 Firebase 托管根目录重定向到 Cloud Functions 不起作用

我将Firebase托管与firebase.json文件一起使用,该文件应该将所有流量转发到云函数(prerender),该函数为SEO填充meta和og标签。{"hosting":{"public":"dist/prod","rewrites":[{"source":"**","function":"prerender"}]}}我的prerender函数正在处理请求并呈现HTML文件。这很好用:exportconstprerender=functions.https.onRequest((req,res)=>{console.log('prerenderfunction:"'+req

javascript - "return function() { ... }"在 JavaScript 中有什么作用?

最近我看到了这段JavaScript代码,但是一直无法理解它在做什么。varf=function(a){returnfunction(){alert(a());};};f(function(){return"HelloWorld";})();请解释这完成了什么! 最佳答案 它执行f返回的函数。f返回一个调用警报的函数,该警报显示您作为参数提供给f的函数的输出。编辑:只需替换一些部件以使其更美观,您就会看到自己:varf=function(a){varoutput=a();varalertCaller=function(){alert

javascript - 在哪里添加字符串原型(prototype)

我目前在TitaniumStudio中使用JavaScript(CommonJS),并且对原型(prototype)制作有疑问。假设我想向现有类添加一个新函数。例如:String.prototype.trim=function(){returnthis.replace(/^\s+|\s+$/g,"");}我应该在什么地方添加此代码以立即对所有类可用?提前致谢。 最佳答案 好的,我找到了最佳答案(来自IvanŠkugor),我想把它放在这里与有同样问题的人分享。谢谢你的帮助。“扩展native原型(prototype)通常不是一个好主

javascript - 在 Firebase Cloud Functions 中创建 PDF

我是javascript的新手,我正在尝试使用pdfkit从firebase函数制作PDF文件。下面是我的功能代码。constpdfkit=require('pdfkit');constfs=require('fs');exports.PDFTest=functions.https.onRequest((req,res)=>{vardoc=newpdfkit();varloremIpsum='Loremipsumdolorsitamet,consecteturadipiscingelit.Etiamin...';doc.y=320;doc.fillColor('black')doc.t

javascript - 缩小版本的 jQuery 或 Prototype - JS 框架选择

在为我的下一个项目考虑JS框架时,我可以看到明显倾向于jQuery的规模,但是,Prototype也获得了好评。我正在考虑的问题是如何缩小这些以仅具有我真正需要的功能。最新的jQuery似乎压缩了55k,例如,我显然只需要非常基本的主要需要的功能或跨浏览器兼容性。手动编写我需要的代码的替代方案听起来很痛苦。有没有人遇到过“jQuerydownscaler”或“Prototypedownscaler”?像Dlite这样的东西并没有完全解决它,因为我需要带超时的跨浏览器AJAX和跨浏览器cookie处理,但也许还有其他一些轻量级解决方案?与ASP相关的bundle无济于事,因为我正在做一个

javascript - foo() 和 function() 之间的区别}

用匿名函数包装函数有什么好处吗?我的意思是一个特定的例子:functionasyncFuntion(callback){setTimeout(callback,6000);};asyncFuntion(function(){console.log('Callingafter6s.');});和包装函数:functionasyncFuntion(callback){setTimeout(function(){callback();},6000);};asyncFuntion(function(){console.log('Callingafter6s.');});在这两种情况下输出是相同