每天一篇javascript学习小结(属性定义方法)
定义(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学习小结,之后每天还会继续更新,希望大家继续关注。
相关文章
详解webpack 打包文件体积过大解决方案(code splitting)
这篇文章主要介绍了webpack 打包文件体积过大解决方案(code splitting),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-04-04Omi v1.0.2发布正式支持传递javascript表达式
这篇文章主要介绍了Omi v1.0.2发布正式支持传递javascript表达式,非常不错,具有参考借鉴价值,需要的朋友可以参考下2017-03-03JavaScript运动框架 解决防抖动问题、悬浮对联(二)
这篇文章主要为大家详细介绍了JavaScript运动框架的第二部分,解决防抖动问题、悬浮对联问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-05-05js鼠标点击按钮切换图片-图片自动切换-点击左右按钮切换特效代码
今天主要给大家分享一段js和css代码组合实现鼠标点击按钮图片切换,图片自动切换,点击左右按钮图片切换三种效果,代码非常简单,需要的朋友一起来学习吧2015-09-09浅谈js使用in和hasOwnProperty获取对象属性的区别
下面小编就为大家带来一篇浅谈js使用in和hasOwnProperty获取对象属性的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-04-04
最新评论