一、证明等号的执行顺序
猜测:由于js堆内存和栈内存的存在。a = 1 和 a = {n:1} 这个段代码。如果是从左往右执行,那么如果是赋值对象的话,需要对a进行多次操作。耗费性能。
我们知道js对象的数据属性和访问器属性。我们可以利用这个代码来解析 = 的操作
示例demo:
var c = {
_name:'c',
}
Object.defineProperty(c,'name',{
get:function () {
console.log('get c.name value ')
return this._name;
},
set:function (value) {
console.log('set c.name value ')
this._name = value;
}
})
var b = {
_name:'b',
}
Object.defineProperty(b,'name',{
get:function () {
console.log('get b.name value ')
return this._name;