概述
对象属性的动态与静态
- 我们想要把a设置为obj的属性,当a变化时,obj.a也跟着改变
let a = 1;
const obj = {
a
}
a++;
console.log(a, obj.a); // a = 2, obj.a = 1;
-
为什么会这样? 其实是源于 js 值的赋值,对于基本的数据类型是拷贝值的,会赋值一份与当前值相同的数据到一个新的值上,两者是没有任何联系的。
-
如果a是一个引用类型,比如对象会怎样?
const a = {
age : 18
}
const obj = {
a
}
a.age++;
console.log(obj.a.age, a.age); // 19 , 19
- 那如果 a还是基本数据类,但是 a 要动态改变呢? 使用 get方法
let a = 1;
const obj = {
get a(){
return a;
}
}
a++;
console.log(a, obj.a); // 2,2
- get 方法就是一种对象获取动态属性的方法,方法名是什么,属性是什么,obj.b = undefined
最后
以上就是还单身大地为你收集整理的对象属性的动态与静态对象属性的动态与静态的全部内容,希望文章能够帮你解决对象属性的动态与静态对象属性的动态与静态所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复