【阅读】《Head First JavaScript》第十章——创建自定义对象
来源:互联网 发布:电视剧《福贵》知乎 编辑:程序博客网 时间:2024/05/18 12:29
复习要点:
- 我们在使用对象的时候,有时候会遇到那种不需要每一个对象都要有的变量和方法(就是Java中的静态方法和静态变量啦),这时如果我们在创建对象的时候创建了这些只需要一个的的变量或方法,就会造成资源的浪费。这个时候我们就要在JS代码中的使用相当于Java中静态的功能了
- 使用this关键字访问实例的特性:
function People(name, age) { this.name = name; this.age = age;};
- 类拥有的方法(联想到Java中的静态方法),可以创造一次,运行很多次。这种方法储存在类里,让所有实例共享一份方法代码
- JS中创建类拥有的方法:在类里面写下
People.prototype.speak = function() { ...};
- JS中使用类拥有的方法:
xiaoming.speak();
住:xiaoming是一个人 - 类是对象的描述,实例则是实际的对象,根据对象描述所创建
- 类勾画了对象的特性与方法(Java中属性和函数),实例则把真正的数据放在特性里以供方法使用
- 关键字this用于从实例本省的程序代码内访问实例(就是说this关键字已经代表着当前这个实例了)
- prototype对象让方法课存储与类内,以免实例不必要地一直使用同一个代码,要复制好久的亲~
- javascript并未真正支持类作为语言的具体构成要素。javascript使用prototype以模拟类
- 类特性“必须”通过实例来访问:遂让类特性使用prototype对象创建,并借此存储在类中,但是它们还是必须透过实例被访问。所以,类特性的方位方式就像实例特性,也要使用关键字this和对象的那个符号(点号)。差异在于特性的存储地点在类中(类特性),而实例特性存储在某个实例中(其实也可以直接想Math.random()那样不用实例来访问,看下一条你就知道了)
- 只属于类的方法:声明的时候不要用prototype关键字了
People.drink = function(){ alert("我要喝水");};
使用的时候就是这样:xiaoming.drink();就会输出“我要喝水”这个四个字了 - 注意像上一天这样的方法无法使用实例中的内容,但是你可以把一整个实例作为参数传递给这个只属于类的方法(有人知道这个方法有没有什么专有名词的,每次都用这个好麻烦)
- 如果一个函数中缺少了一部分自变量,那么那部分函数中的自变量将会变成null,咳咳,这不一定是坏事哦,如果你想要一些可选的自变量的话(假如说是一个人的构造函数,其中姓名,年龄是必须的,喜不喜欢画画,爱看什么书是不必须的,这个时候你就可以把控制是否喜欢看书的变量放在最后,放在最后的原因是就算没有它,其他自变量的对应方式也不会有什么变化。而后在函数中判断一下这个控制是否爱看书的变量是否为null就好了)
0 0
- 【阅读】《Head First JavaScript》第十章——创建自定义对象
- 【阅读】《head first html5》第十章——《运用javascript》(实际上的javascript线程)
- 【阅读】《Head First JavaScript》第九章——为数据带来生命(对象)
- 【阅读】《head first html5》第四章——javascript函数和对象
- 【阅读】《head first javascript》第二章——存储数据
- 【阅读】《Head First javascript》第三章——探索客户端
- 【阅读】《head first javascript》第四章——决策
- 【阅读】《Head First Javascript》第五章——循环
- 【阅读】《Head First Javascript》第六章——函数
- 【阅读】《Head First JavaScript》第十一章——除错
- 【阅读】《Head First HTML 与 CSS》第十章——div与span
- 【阅读】《head first jquery》(第十章)——jquery UI
- 【阅读】《Head First javascript》第一章——交互式网络
- Head First JS阅读笔记之 自定义对象
- 【阅读】《Head First Javascript》第七章——表单与验证
- 【阅读】《Head First JavaScript》第八章——驾驭网页(利用DOM)分割HTML
- 【阅读】《head first jquery》第六章——jquery和javascript
- 【阅读】《head first html5》第二章——javascript和DOM
- GNU中的处理目标文件的若干工具
- 词典对象
- POJ 2289 Jamie's Contact Groups(二分+最大流)
- swing生成图片之保存图片
- 10年 阿里
- 【阅读】《Head First JavaScript》第十章——创建自定义对象
- 特殊Hash(概率)
- CoreBluetooth的使用问题汇总
- 商业智能 别人家文章收藏
- leetcode Wildcard Matching
- Linux系统之initramfs工作流程
- A007:文件特殊权限位学习( SUID、SGID、STICKY )
- RailsCasts11 Refactoring User Name Part 2 重构User name(二)
- <mvc:annotation-driven />深度解析