对象在JS中的地位很重要,咱们每时每刻都在和对象作着交互。可是如何向一我的介绍什么是对象呢?函数
我的感受对象就像一个集合,集合中的元素也一定属于这个集合。
就像对象中的属性都是围绕这个对象展开的。或者能够借用电商方面的一个词语sku
,它定义为保存库存控制的最小可用单位,那么对象就能够看作拥有这些sku的商品。this
var personal = { name: '', age: '', gender: '' ... }
以上就是一个简单对象的定义方法,我定义了一个personal
对象,他目前有三个属性,属性是这样定义的[key:value]
。code
属性是属于对象的,在JS中咱们操做对象获取它的属性或者修改它的属性。EXMAScript中有两种属性数据属性
&访问器属性
对象
数据属性包括一个数据值的位置。这个位置能够读入以及写入值ip
若是要修改属性的默认特性经过Object.defineProperty()
方法进行修改,这个方法接收三个参数get
var book = { name: 'JS权威指南', price: 115 } Object.defineProperty(book,'name',{ writeable: false, value: 'JS高程' })
访问器属性不包含数据值,可是包含一对getter/setter函数,读取访问器调用getter,设置值时调用setterit
var book = { year: 2018, author: 'xx' } Object.defineProperty(book,'year',{ get: function () { return this.year; }, set: function (val) { var time = this.year; if(val<time){ return "新书" } .... } })