草庐IT

private-class

全部标签

使用私有(private)成员创建 JavaScript 类

我正在开发一个实用程序,用于在javascript中创建类。它有效,问题是如何定义私有(private)属性。这是代码varOO={Class:function(){varlen=arguments.length;vardata=arguments[len-1];varKlass;if(data.constructor===Object){Klass=function(){};}else{Klass=data.constructor;deletedata.constructor;}OO.extend(Klass.prototype,data);//ClassicExtendMethod

jquery - Javascript 模块模式返回私有(private)属性的初始值

我试图从模块中获取私有(private)属性,但我总是获取它的初始值,而不是最近的值。提交表单并调用onSuccess时,我将partnerId设置为10。之后,我有一个获取合作伙伴Id的点击事件,并得到-1搜索.jsvarSearchForm=(function($){"usestrict";//Privatevariables//PrivatefunctionsvaronSuccess=function(){PartnerDetail.setPartnerId(10);};//Publicfunctionsreturn{onSuccess:onSuccess,};})(jQuery

javascript - 在 Javascript Web 应用程序中保护私有(private) API key

如何在基于Web(javascript)的应用程序中安全地存储私有(private)API的key?我对此进行了彻底的研究,但尚未找到可靠的答案或任何类型的标准程序。我的API实现了HMAC身份验证,我站点的每个成员都有一个公钥/secretkey来验证他们对API的使用并签署​​他们的请求。在移动应用程序上,服务器将通过加密连接发送公钥/私钥,以便在成功登录请求后存储在设备上。后续请求将使用这些key进行签名。那么在这种情况下,考虑到源代码对于知道如何使用网络检查器的任何人都是可见的,我应该将key存储在客户端的什么地方?实际上,如果经过身份验证的用户看到他们自己的key,这不是问题

javascript - Prop 类型 : array of one of the class instance

我正在尝试为我的属性“listOfItems”之一提供类型。我希望此属性是“事件”类实例或“field”类实例的数组。这是我实现它的方式:MyClass.propTypes={...,listOfItems:PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.instanceOf(Event),PropTypes.instanceOf(Venue)]))然而,它似乎并没有起作用。我收到此警告:Prop类型失败:提供给MyClass的值[objectObject]的ProplistOfItems[0]无效,应为[空,空]。我不想使用PropT

javascript - 我什么时候想在 JavaScript 中使用 “class”(静态)方法或属性?

在JavaScript中,为什么要将属性直接附加到构造函数?varHuman=function(){};Human.specie="HomoSapience";在查看CoffeeScript的__extend辅助函数后,我得到了这个问题,其中包含:for(varkeyinparent){if(__hasProp.call(parent,key))child[key]=parent[key];}直接从构造函数对象复制属性/方法到子类对象。但是为什么会有人这样做呢?谢谢! 最佳答案 (编辑:在其原始形式中,问题询问的是将属性附加到类还是

javascript - Sizzle 的 CLASS Javascript 正则表达式?

我查看了Prototype.js代码并在那里看到了(在Sizzle部分):我的问题是关于那一行:类:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,\.用于点,接下来是(未捕获的组:单词、范围和-)或(\.)。(实际上它说\\.但第一个只是为了转义所以它是\.)。嗯?什么是\.?我测试了/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/.test('.aa\.')并返回true。但是.aa\.是什么?显然该类是.aa但如果\是有效的char,为什么它不在[..]部分?我错过了什么? 最佳答案

javascript - jQuery 插件开发如何保持变量和方法私有(private)

出于练习目的,我正在创建一个jQuery插件,一个简单的图像slider。我使用来自Boilerplate-jQueryPlugins的模式.在初始化过程中,一切都按预期工作,每个实例都获得设置所需的正确值(宽度和高度,以及事件绑定(bind))。当我尝试将计算出的幻灯片宽度传递给执行动画的函数(单击下一步按钮)时,问题就开始了。我尝试保存的每个值都被最后一个实例覆盖-好的,据我所知,这就是原型(prototype)继承的作用。我在google上搜索了很多并在stockoverflow上找到了(不仅是)这个解决方案:globalorlocalvariablesinajquery-plu

javascript - ES6 类私有(private)成员语法

这个问题在这里已经有了答案:PrivatepropertiesinJavaScriptES6classes(41个回答)关闭6年前。我有一个简短的问题。在ES6类中声明私有(private)成员的最简洁直接的方法是什么?也就是说,如何实现functionMyClass(){varprivateFunction=function(){return0;};this.publicFunction=function(){return1;};}作为classMyClass{//???publicFunction(){return1;}}

javascript - 除了对象之外,在 JavaScript 中调用的可实例化 "class"是什么?

我有一个这样的对象:functionPerson(){}除了对象,你会怎么调用它?明明不是类,那又是什么?我正在寻找一个不是对象的术语,因为我想特别强调您可以创建它的新实例这一事实。 最佳答案 “functionPerson(){}”是类型的构造函数。newPerson()的值将是类型Person的实例(或对象)。 关于javascript-除了对象之外,在JavaScript中调用的可实例化"class"是什么?,我们在StackOverflow上找到一个类似的问题:

javascript - 无论如何让实例共享相同的功能但同时具有私有(private)变量?

我有这段代码:varHuman=function(name){this._name=name;};Human.prototype.Shout=function(){alert(this._name);};vartom=newHuman("tom");varjohn=newHuman("john");alert(tom.Shout===john.Shout);现在._name不是“私有(private)的”。我想将._name设为“私有(private)”,但同时我不希望为每个Human实例创建附加函数(换句话说,tom.Shout必须===tojohn.Shout),因为为创建附加函数