JavaScript权威指南6-属性的特性(1)
2016-04-04 00:00
281 查看
首先,对性属性值可以用一个或两个方法替代,这两个方法就是getter和seetter.由getter和setter定义的属性称作"存取器属性",它不同于"数据属性",数据属性只有一个简单的值.有如下代码:
注意:和数据属性不同,存储器属性不具有可写性.三种情况:
1.有setter和getter 可读可写
2.只有setter 可写不可读
3.只有getter 可读不可写
考虑下面代码:
var o = { $num : 0, set a(n){ this.$num = n + 1; }, get a(){ return this.$num + 1; } } o.a = 10;//调用setter后值为11 console.log(o.a);//调用getter后返回的值为12
注意:和数据属性不同,存储器属性不具有可写性.三种情况:
1.有setter和getter 可读可写
2.只有setter 可写不可读
3.只有getter 可读不可写
考虑下面代码:
var o = { $num : 0, set a(n){ this.$num = n + 1; } } o.a = 10;//调用setter后值为11 console.log(o.a);//没有getter,所以返回的是undefined
var o = { $num : 0, get a(){ return this.$num + 1; } } o.a = 10;//赋值失败,没有setter console.log(o.a);//调用getter后返回的值为1
相关文章推荐
- 如何定义一个getter和seter设置的属性可以被绑定
- ECMAScript5中的对象存取器属性:getter和setter介绍
- AS3 类的定义
- 回答下在bugs.php上的一个问题
- JavaScript权威指南(1)——词法结构
- 《javaScript权威指南》随读笔记(一)
- 《javaScript权威指南》随读笔记(二)
- 学习笔记---使用prototype.js扩展struts标签实现xmlhttprequest
- Object-c @property的使用方法
- PagedCollectionView
- 黑马程序员--接口污染和组件污染 概念理解
- jsp EL(3)
- Spring 定时器
- Struts2的拦截器
- if else 的代码重构
- struts常见错误
- Vue.js学习系列(二十九)-- 计算属性(三)
- JavaSE 学习参考:类的封装
- 修改JS之后没有效果,比如依然乱码
- JavaScript编写人机对战五子棋(五)