javascript 摸拟 class
以及 实例变量,实例方法; 类变量,类方法
function Circle(r){
this.r = r; // this.r 这里它变就实例变量
}
Circle.PI = 3.14 // 类方法,只能在Circle上调用
Circle.prototype.area=function(){
return this.r * Circle.PI;
} // 实例方法
Circle.max = function(a,b){
return a.r > b.r ? a : b
} // 类方法
有时候我们大概也需要用到 私有属性
:
第一个“发明”的人据说是Douglas Crockfork, 想出这方法也挺绝的。
function Circle(r) {
this.r = function() { return r; }
}
//之后r的值将不会被外界改变。
Circle.PI = 3.14;
Circle.prototype.area = function() {
return Circle.PI * this.r() * this.r();
}
var c = new Circle(1.22);
// 以下情况都不能改变 半径的 值
c.r = function(){return 3333}
c.r = 2222;
//如此一来可以保证r的值不小心给改变了。
分享到:
相关推荐
在本项目中,"我的日常小记:spring以及mybatis最终源码" 是一个记录了开发者个人编程经验的项目,主要涉及两个核心框架——Spring和MyBatis。这两个框架是Java开发领域中非常流行的技术栈,广泛应用于企业级后端...
### 工作小记:企业微信嵌H5页面用户权限获取匹配 #### 一、背景与目的 在当前数字化转型的大背景下,企业越来越多地利用移动互联网技术来提升工作效率和服务质量。其中,企业微信作为一种重要的办公协作平台,在...
web前端开发必备的技术,dom编程也是其中重点中的重点
python爬虫-加速乐cookie混淆解析实例小记
- **注意事项**:如果派生类的方法名称与基类的虚方法不同,则编译器将报错。 - **`final`关键字**: - 用于标记虚函数或整个类不可被进一步覆盖或继承。 - **示例**: ```cpp class E { public: virtual ...
- **定义常量的方法**: - 使用`#define`预处理器指令,例如`#define LENGTH 20`。 - 使用`const`关键字,如`const int LENGTH = 10;`。 #### C语言存储类别 - **`auto`**:局部变量默认存储类别。 - **`...
本篇小记将详细地介绍JavaScript语言中的几个关键结构特性,包括对Unicode字符集的支持、变量声明与初始化、以及类型运算符和算术运算符的使用。 首先,关于JavaScript支持Unicode字符集,这一点意味着在JavaScript...
- 如果一个类的所有实例字段都是`transient`的,那么这个类就没有必要实现`Serializable`接口,因为序列化将没有任何意义。 - 在处理`transient`变量时,开发者通常需要自己管理这些变量的状态,例如在反序列化后...
- 上述payload中涉及到了多个类和方法的嵌套使用,最终目的是为了在反序列化过程中执行`@riny($CBFG[1])`这行代码,其中`$CBFG`是一个预定义的变量,通常由框架内部设置,用于存储反序列化后的对象。 #### 四、总结...
Vuex 使用方法总结 Vuex 是一个专门为 Vue.js 设计的状态管理器,用于管理应用程序的状态。下面是 Vuex 的使用方法总结: State Vuex 的状态管理是通过 State 来实现的。State 是一个对象,存储了应用程序的所有...
在Java编程中,大型方法(即超过2500行的方法)并不常见,通常是通过自动化工具生成,如模板编译或语言转换。然而,这样的大方法在Hotspot JVM上可能会遇到性能问题。从描述中我们可以看到,一个名为`play()`的方法...
### STM8S+STVD+COSMIC折腾小记 #### 一、STM8S存储器模式及编程细节 STM8S微控制器支持两种不同的存储器模式:`-stackshort(mods0)` 和 `-StackLong(modsl0)`。这两种模式分别针对不同的内存管理需求。 1. **`-...
这篇小记主要探讨了如何在不同场景下实现元素的垂直居中。博客链接为<https://xingda1989.iteye.com/blog/1190353>,虽然没有提供具体内容,但我们可以根据常规的垂直居中方法进行讨论。 一、单行文本垂直居中 对于...
在“android开发小记”这个主题中,我们可以深入探讨Android应用程序开发的相关知识,特别是通过查看提供的压缩文件中的代码示例。这些文件名如lesson_8_code.zip至lesson_20_codel.zip,以及不同的Mp3Player版本,...
环境: Linux s12084 2.6.9-67.ELsmp #1 SMP Wed ...小记一下。以备以后参考。 boost 库做得真好。在windows 平台, linux 平台下编译都很顺利。hp aCC 也宣称对 boost 1.35 完全支持 。 全部编译是很痛苦的过程
Servlet通过继承HttpServlet类并覆盖doGet或doPost等方法来实现动态网页的生成。例如,你可以看到作者可能记录了如何处理HTTP请求、响应头和体的设置,以及如何使用Servlet进行会话管理。 JSP(Java Server Pages)...
这涉及到对象属性访问错误,通常因为类定义不正确或方法引用了不存在的属性。 - 当使用filter()方法从数据库获取QuerySet时,返回的是对象列表。如果直接访问列表的第一个元素的属性(如event_type),就会出现错误...
### D3.js 学习小记 #### SVG基础与D3.js绘图实践 ##### SVG基础 SVG(可缩放矢量图形)是一种基于XML的矢量图像格式,用于描述二维图形以及图形应用。SVG 图像可以被放大、缩小而不会失真,非常适合于网页制作。...