草庐IT

public-method

全部标签

JavaScript 模块模式 : How do private methods access module's scope?

在实现模块模式时,私有(private)函数如何访问模块的私有(private)属性?我还没有看到开发人员这样做的任何例子。有什么理由不这样做吗?varmodule=(function(){//privatepropertyvarnumber=0;//privatemethod_privateIncrement=function(){//howdoIaccessprivatepropertieshere?number++;};//publicapireturn{//OKgetNumber:function(){returnnumber;},//OKincrNumber:function

JavaScript 面向对象 : method definition with or without "prototype"

是这段代码吗,functionPerson(){functionmyMethod(){alert('hello');}this.method=myMethod;}相当于:functionPerson(){}Person.prototype.method2=function(){alert('hello');};如果是,我应该使用哪个方法定义,为什么? 最佳答案 在您的简单示例中,它们在功能上是等效的,但在幕后的工作方式却大不相同。函数的prototype属性实际上是“原型(prototype)模板”。它说“每当创建一个对象并且我被用

javascript - 有什么方法可以避免使用 JSDoc "@method"注释

我个人不是生成文档的忠实拥护者(我更像是一个“阅读源代码Luke”的人),但我可以看到此类文档对其他人有何用处。现在,通常他们生成的文档不会影响我,除了一件事:@method。大多数JSDoc注释(例如@param)对于阅读源代码的人来说仍然非常有用,但是@method是100%冗余的:/**@paramnumnumbertoaddfiveto*@methodaddFive*/functionaddFive(num){...所以,我真的很想避免让数百行@method弄乱我们的代码。但是,我的同事认为@method是JSDoc生成器(他使用的是YUI生成器)能够生成类的方法列表所必需的。

javascript - 使用 Browserify 跨页面共享公共(public)代码

我有一个相当大的多页javascript应用程序,它使用requirejs来组织代码。我正在研究转向browserify,因为我喜欢它提供的简单性,而且我已经习惯了node.js模块系统。目前在每个页面上我都有这样的javascript我有一个共同的构建步骤和每个页面的构建。这样,每个页面的大部分JS都会被缓存。是否可以用browserify做类似的事情?这样的缓存是否值得,还是将所有页面的所有内容捆绑到一个文件中更好(考虑到可能只有一个页面可以依赖于大型外部库)? 最佳答案 您可以使用factor-bundle做到这一点。您只需将

javascript - 主干 View 的私有(private)和公共(public)变量

在BackboneView中,您会将私有(private)变量和公共(public)变量放在哪里。现在我有这样的东西:myView=Backbone.View.extend({initialize:function(options){this.myPublic="I'mpublic";}});我尝试在初始化方法之前添加一个varmyPrivate但它抛出了一个错误。只在View中使用的私有(private)变量会去哪里? 最佳答案 我建议您使用initialize方法作为所有其他方法的闭包。我认为这将使您的行为与我们在经典继承语言(

javascript私有(private)函数访问公共(public)变量

我有这门课:functionctest(){this.var1="haha";this.func1=function(){alert(this.var1);func2();alert(this.var1);}varfunc2=function(){this.var1="huhu";}}并称它为:varmyobj=newctest();myobj.func1();不是应该第二个警报会弹出“huhu”吗?func2是私有(private)的,它不能访问var1公共(public)变量吗?如果私有(private)函数不能访问公共(public)变量,我该怎么做?提前致谢!

javascript - Internet Explorer 11 : Object doesn't support property or method 'isInteger'

我在InternetExplorer控制台中遇到此错误“对象不支持属性或方法‘isInteger’”,我该如何解决?代码:functionverificaNota(nota){if(nota.length>0){vararr=[];if(nota.indexOf(".")!=-1){returnferificareArrayNote(nota.split('.'));}elseif(nota.indexOf(",")!=-1){ferificareArrayNote(nota.split(','));}elseif(nota.length0){returntrue;}else{retu

javascript - 公共(public)第一方客户端的正确 OAuth2 流程

我是stackoverflow的常客,但这是我的第一个问题。我正在使用OAuth2规范开发授权服务器。我只是被困在如何在使用密码流的同时确保第一方客户端的真实性上。我阅读了很多论坛,这就是我得到的:Javascript单页客户端AlexBilbie的这篇博文,他指出,为了避免client_secret问题,我们应该:It’ssimple;proxyallofyourAPIcallsviaathinserversidecomponent.Thiscomponent(let’sjustcallitaproxyfromhereon)willauthenticateajaxrequestsfr

javascript - 类型错误 : Cannot call method 'then' of undefined Angularjs

我是Angular的新手,在进行同步操作时遇到了问题。我已经解决了AngularController出现的几个问题,我从newController文件中得到错误“无法调用未定义的方法”。angular.module('newApp.newController',['angularSpinner','ui.bootstrap']).controller('newController',function($q,$scope,utilityFactory,$http){utilityFactory.getData().then(function(data){console.log("succ

javascript - Webpack:如何使用 CommonsChunkPlugin 将条目捆绑到多个公共(public) block ?

假设我有两个页面Page1和Page2,它们都使用一些库(vendor),如jquerybackbone我想将其提取为单个文件,然后我希望将共享模块(不包括vendor)提取到另一个文件中,这是webpack配置:functionlistFiles(srcpath){returnfs.readdirSync(srcpath).filter(function(file){returnfs.statSync(path.join(srcpath,file)).isDirectory();});}varcreateEntry=function(src){vardest={vendor:["ba