草庐IT

vec_private

全部标签

javascript - 如何在命名空间中创建私有(private)变量?

对于我的Web应用程序,我在JavaScript中创建一个namespace,如下所示:varcom={example:{}};com.example.func1=function(args){...}com.example.func2=function(args){...}com.example.func3=function(args){...}我还想创建“私有(private)”(我知道这在JS中不存在)命名空间变量,但我不确定最好的设计模式是什么。会不会是:com.example._var1=null;或者设计模式会是别的东西吗? 最佳答案

javascript - 私有(private)和特权方法与原型(prototype)方法

在JavaScript中,我可以通过在构造函数中声明来创建私有(private)和特权方法。通过这种方式,我必须将它们移出对象的原型(prototype)。然后我失去了继承的可能性和一些性能,因为每个对象都将拥有这些方法的自己的副本,而不是访问一个原型(prototype)对象。所以我现在的问题是什么可能是petter模式:是否使用私有(private)和特权方法。我不太喜欢悬挂,所以我想避免这种情况。那怎么办呢?你的经历是什么? 最佳答案 我从未发现在JavaScript中创建所谓的“私有(private)”函数有任何值(valu

javascript - 你能在 JavaScript 中继承私有(private)函数吗?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求提供代码的问题必须表现出对所解决问题的最低限度理解。包括尝试过的解决方案、为什么它们不起作用,以及预期结果。另请参阅:StackOverflowquestionchecklist关闭9年前。Improvethisquestion我正在使用闭包来创建具有私有(private)和公共(public)方法的对象。看起来像这样-varDog=(function(){functionDog(){}varsize='big';var_privateSaySize=function(){return'Iama'

javascript - javascript中的私有(private)静态函数

如何创建一个无法从外部调用的函数?varobj={function1:function(){alert("function1");},function2:function(){alert("function2...");obj.function1();}};//sohowtomakethisfunctionunaccessibleobj.function1();//andyoucouldonlycallthisfunctionobj.function2(); 最佳答案 您可能需要考虑使用YahooModulePattern.这是一个

javascript - React Router V4 使用 Redux-persist 和 React-snapshot 保护私有(private)路由

我正在使用ReactRouter实现私有(private)路由Route组件:functionPrivateRoute({component:Component,authed,emailVerified,...rest}){return(authed===true?:}/>)}预期行为:authed通过使用redux-persist通过页面刷新持久保存所以在页面刷新或重新加载时,如果authedProp是true那么路由器应该呈现从来没有去路径"/"问题所在的实际行为:与authed===true(坚持)重新加载页面或刷新页面会导致发生以下操作(选中reduxdevtools)那个行动

javascript - 如何使用可重用方法和私有(private)属性创建 Javascript 对象创建模式?

考虑到具有私有(private)属性的对象创建模式,一种方法是:functionMyStack(){varlist=[],index=0;this.push=function(val){returnlist[index++]=val;};this.pop=function(){//...}}varstack1=newMyStack();stack1.push(5);varstack2=newMyStack();stack2.push(11);问题在于:Stack的每个实例都有它自己的“push”和“pop”方法副本。另一种实现构造方法的方法是:functionMyStack(){thi

javascript - polymer 中的私有(private)非静态变量?

如何在polymer中拥有私有(private)非静态变量?在:Polymer('component-one',{internalState=1,ready(){this.anotherInternalState=1;}/*morevariablesandfunctions*/});internalState和anotherInernalState都暴露给外部(例如,可以通过类似的方式访问:document.querySelector('component-one').internalState(当从外部更改internalState会使组件不稳定时,这可能是不可取的。)其中:(fun

javascript - 类中的javascript私有(private)成员会导致巨大的内存开销吗?

在JavaScript中,对象的字段始终是“公共(public)的”:functionTest(){this.x_=15;}Test.prototype={getPublicX:function(){returnthis.x_;}};newTest().getPublicX();//usingthegetternewTest().x_;//bypassingthegetter但是您可以通过使用局部变量并使用闭包作为getter来模拟“私有(private)”字段:functionTest(){varx=15;this.getPrivateX=function(){returnx;};}

javascript - 在私有(private)范围内包含 JS 文件

我只是想要包含一个JS文件的能力,但不希望在全局范围内对其进行评估。我浏览了labjs和requirejs,虽然它们可以做1000种其他事情,但似乎都不能解决这个问题。我知道我可以包装foo.js的代码,使其需要特定的上下文,并且可以在其中执行操作,但这不是我想要的(必须修改源文件)。相反,我希望源JS文件保留为任何其他JS文件,不需要任何类型的元数据或通过代码包含的文件本身解析运行时执行上下文;在包含的文件之外,没关系。为清楚起见,一些简单的演示:/**Example1-applytocurrentcontext*/functionx(){include('foo.js');//pr

原型(prototype)上的 Javascript 私有(private)成员

好吧,我试图弄清楚这是否可能。这是代码:a=function(text){varb=text;if(!arguments.callee.prototype.get)arguments.callee.prototype.get=function(){returnb;}elsealert('alreadycreated!');}varc=newa("test");//createsprototypeinstanceofgettervard=newa("ojoj");//alertsalreadycreatedalert(c.get())//alertstestalert(d.get())/