var Book = {
name: '人性的弱点'
};
console.log(Book.name); // 人性的弱点
==============================================================================
//在console.log(book.name)同时,直接给书加一个书号
var Book = {};
var name = '';
Object.defineProperty(Book,'name',{
set:function(value) {
name = value;
console.log('你取了一个书名叫:'+value);
},
get:function() {
console.log('get方法被监听到');
return '<'+name+'>';
}
});
Book.name = '人性的弱点'; //你取了一个书名叫:人性的弱点
console.log(Book.name); //<人性的弱点>
【注】defineProperty属性设置Book对象的’name’属性==>对其get和set方法进行重写,
set方法在设置name属性时被触发(在执行Book.name='人性的弱点’时)
get方法在获得name属性时被调用(console.log(Book.name))