每天一篇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 相关文章推荐
关于JavaScript的gzip静态压缩方法
Jan 05 Javascript
收集的网上用的ajax之chat.js文件
Apr 08 Javascript
用js来解决ajax读取页面乱码
Nov 28 Javascript
表格单元格交错着色实现思路及代码
Apr 01 Javascript
Jquery动态进行图片缩略的原理及实现
Aug 13 Javascript
javascript判断office版本示例
Apr 11 Javascript
input标签内容改变的触发事件介绍
Jun 18 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
May 23 Javascript
基于Vue实现拖拽功能
Jul 29 Javascript
浅入深出Vue之自动化路由
Aug 06 Javascript
JavaScript实现文件下载并重命名代码实例
Dec 12 Javascript
vue中解决拖拽改变存在iframe的div大小时卡顿问题
Jul 22 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
ThinkPHP5实现作业管理系统中处理学生未交作业与已交作业信息的方法
2016/11/12 PHP
thinkPHP5.0框架配置格式、加载解析与读取方法
2017/03/17 PHP
PHP开发中csrf攻击的简单演示和防范
2017/05/07 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
Track Image Loading效果代码分析
2007/08/13 Javascript
用js遍历 table的脚本
2008/07/23 Javascript
JS中的public和private对象,即static修饰符
2012/01/18 Javascript
js计算字符串长度包含的中文是utf8格式
2013/10/15 Javascript
结合JQ1.9通过js正则判断各种浏览器版本的方法
2013/12/30 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
jQuery获得子元素个数的方法
2015/04/14 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
AngularJs解决跨域问题案例详解(简单方法)
2016/05/19 Javascript
javascript实现简易计算器的代码
2016/05/31 Javascript
js制作网站首页图片轮播特效代码
2016/08/30 Javascript
JS异步错误捕获的一些事小结
2019/04/26 Javascript
微信小程序如何调用图片接口API并居中显示
2019/06/29 Javascript
VUE路由动态加载实例代码讲解
2019/08/26 Javascript
JS操作json对象key、value的常用方法分析
2019/10/29 Javascript
vue中重定向redirect:‘/index‘,不显示问题、跳转出错的完美解决
2020/09/28 Javascript
Tensorflow实现卷积神经网络的详细代码
2018/05/24 Python
python字符串中匹配数字的正则表达式
2019/07/03 Python
Python 获取windows桌面路径的5种方法小结
2019/07/15 Python
安装并免费使用Pycharm专业版(学生/教师)
2020/09/24 Python
CSS3中文字镂空、透明值、阴影效果设置示例小结
2016/03/07 HTML / CSS
莫斯科高科技在线商店:KremlinStore
2019/03/13 全球购物
TUMI香港官网:国际领先的行李箱、背囊品牌
2021/03/01 全球购物
护理专业毕业生推荐信
2013/10/31 职场文书
美德少年事迹材料
2014/01/23 职场文书
中学生班主任评语
2014/01/30 职场文书
2014机关干部学习“焦裕禄精神”思想汇报
2014/09/19 职场文书
2015年度招聘工作总结
2015/05/28 职场文书
党风廉洁教育心得体会
2016/01/20 职场文书
2016年学校党支部创先争优活动总结
2016/04/05 职场文书
十大冰系宝可梦排名,颜值最高的阿罗拉九尾,第三使用率第一
2022/03/18 日漫
MySQL主从切换的超详细步骤
2022/06/28 MySQL