javascript 学习总结(八)属性定义方法
2015-11-02 09:41
711 查看
1、defineProperty
2、__defineSetter__ 和 __defineGetter__
参考网址:
[译]JavaScript中的属性:定义和赋值的区别
/article/4811663.html
/* 定义(Definition).定义属性需要使用相应的函数,比如: Object.defineProperty(obj, "prop", propDesc) 如果obj没有prop这个自身属性,则该函数的作用是给obj添加一个自身属性prop并赋值, 参数propDesc指定了该属性拥有的特性(可写性,可枚举性等). 如果obj已经有了prop这个自身属性,则该函数的作用是修改这个已有属性的特性,当然也包括它的属性值. */ var book = { _year: 2004, edition: 1 }; Object.defineProperty(book, "year", { get: function(){ return this._year; }, set: function(newValue){ if (newValue > 2004) { this._year = newValue; this.edition += newValue - 2004; } } }); book.year = 2005; alert(book.edition); //2
2、__defineSetter__ 和 __defineGetter__
var book = { _year: 2004, edition: 1 }; //legacy accessor support book.__defineGetter__("year", function(){ return this._year; }); book.__defineSetter__("year", function(newValue){ if (newValue > 2004) { this._year = newValue; this.edition += newValue - 2004; } }); book.year = 2005; alert(book.edition); //2
参考网址:
[译]JavaScript中的属性:定义和赋值的区别
/article/4811663.html
相关文章推荐
- 我们程序员为什么要关注 JavaScript ?
- 【转】百度统计js被劫持用来DDOS Github
- JS实现在状态栏显示打字效果完整实例
- Django发送Json格式数据
- js完美身份证验证
- JavaScript Length 属性的总结
- jsp小结04 - 7个动作指令01 forward
- 在线JS/CSS/HTML压缩,格式化
- SSH框架+EL表达式—jsp跨界面传值显示
- JSON格式以及基本用法
- js截取文件名
- JSP清除页面缓存常用方法小结
- JavaScript Length 属性的总结
- JS实现在状态栏显示打字效果完整实例
- JS实现网页标题栏显示当前时间和日期的完整代码
- JS实现超简单的鼠标拖动效果
- JS实现点击按钮获取页面高度的方法
- 纯javascript移动优先的幻灯片效果
- js实现文件上传表单域美化特效
- js实现动态加载脚本的方法实例汇总