每天一篇javascript学习小结(属性定义方法)


Posted in Javascript onNovember 19, 2015

定义(Definition).定义属性需要使用相应的函数,比如:
Object.defineProperty(obj, "prop", propDesc)
如果obj没有prop这个自身属性,则该函数的作用是给obj添加一个自身属性prop并赋值,
参数propDesc指定了该属性拥有的特性(可写性,可枚举性等).
如果obj已经有了prop这个自身属性,则该函数的作用是修改这个已有属性的特性,当然也包括它的属性值.
1、defineProperty      

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学习小结,之后每天还会继续更新,希望大家继续关注。

Javascript 相关文章推荐
JS类库Bindows1.3中的内存释放方式分析
Mar 08 Javascript
javascript获取当前ip的代码
May 10 Javascript
用Javascript评估用户输入密码的强度(Knockout版)
Nov 30 Javascript
js定时调用方法成功后并停止调用示例
Apr 08 Javascript
Jquery 监视按键,按下回车键触发某方法的实现代码
May 11 Javascript
javascript实现切换td中的值
Dec 05 Javascript
js对象的复制继承实例
Jan 10 Javascript
javascript实现详细时间提醒信息效果的方法
Mar 11 Javascript
easyui Droppable组件实现放置特效
Aug 19 Javascript
js实现自动图片轮播代码
Mar 22 Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
Oct 06 Javascript
WebPack工具运行原理及入门教程
Dec 02 Javascript
理解 JavaScript Scoping & Hoisting(二)
Nov 18 #Javascript
js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别?
Nov 18 #Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(基于jquery)
Nov 18 #Javascript
JavaScript如何获取数组最大值和最小值
Nov 18 #Javascript
原生js模拟淘宝购物车项目实战
Nov 18 #Javascript
JavaScript统计网站访问次数的实现代码
Nov 18 #Javascript
javascript实现添加附件功能的方法
Nov 18 #Javascript
You might like
PHP统一页面编码避免乱码问题
2015/04/09 PHP
浅谈PHP拦截器之__set()与__get()的理解与使用方法
2016/10/18 PHP
JAVASCRIPT下判断IE与FF的比较简单的方式
2008/10/17 Javascript
js 页面关闭前的出现提示的实现代码
2011/05/25 Javascript
深入理解Javascript里的依赖注入
2014/03/19 Javascript
JavaScript学习笔记之基础语法
2015/01/22 Javascript
最简单的JavaScript验证整数、小数、实数、有效位小数正则表达式
2015/04/17 Javascript
JS实现点击按钮控制Div变宽、增高及调整背景色的方法
2015/08/05 Javascript
js实现iPhone界面风格的单选框和复选框按钮实例
2015/08/18 Javascript
详解JavaScript基于面向对象之继承实例
2015/12/16 Javascript
Boostrap基础教程之JavaScript插件篇
2016/09/08 Javascript
微信小程序 触控事件详细介绍
2016/10/17 Javascript
Javascript中return的使用与闭包详解
2017/01/11 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
2017/07/19 Javascript
详解Angular2学习笔记之Html属性绑定
2018/01/03 Javascript
javascript中的隐式调用
2018/02/10 Javascript
javascript原生封装一个淡入淡出效果的函数测试实例代码
2018/03/19 Javascript
简单了解微信小程序的目录结构
2019/07/01 Javascript
微信小程序跨页面传递data数据方法解析
2019/12/13 Javascript
Vue-CLI 3 scp2自动部署项目至服务器的方法
2020/07/24 Javascript
[09:43]DOTA2每周TOP10 精彩击杀集锦vol.5
2014/06/25 DOTA
python 远程统计文件代码分享
2015/05/14 Python
Python获取SQLite查询结果表列名的方法
2017/06/21 Python
关于python的list相关知识(推荐)
2017/08/30 Python
使用实现XlsxWriter创建Excel文件并编辑
2018/05/04 Python
使用django-guardian实现django-admin的行级权限控制的方法
2018/10/30 Python
pandas创建DataFrame的7种方法小结
2020/06/14 Python
韩国现代百货官网:Hmall
2018/03/21 全球购物
Chicco婴儿用品美国官网:汽车座椅、婴儿推车、高脚椅等
2018/11/05 全球购物
英国最大的在线蜡烛商店:Candles Direct
2019/03/26 全球购物
程序运行正确, 但退出时却"core dump"了,怎么回事
2014/02/19 面试题
领导干部保密承诺书
2014/08/30 职场文书
2015年库房管理工作总结
2015/10/14 职场文书
奖学金申请个人主要事迹材料
2015/11/04 职场文书
2016年教师政治思想表现评语
2015/12/02 职场文书
Mysql官方性能测试工具mysqlslap的使用简介
2021/05/21 MySQL