如题所示,现在很纠结一个对象类型的属性,初始化赋值应该选哪种?
应该选{},还是null?选择的理由是什么?有什么区别?求大神能解答下,谢谢
下面是选null
<template>
<div>
<p>{{ myObject.name }}</p>
<button @click="updateObject">更新对象</button>
</div>
</template>
<script>
export default {
data() {
return {
myObject: null, // 初始化为 null
};
},
methods: {
updateObject() {
// 通过 this.myObject 来访问对象
this.myObject = { name: 'value' };
},
},
created(){
this.myObject = { name: 'wt' };
}
};
</script>
下面选{}
<template>
<div>
<p>{{ myObject.name }}</p>
<button @click="updateObject">更新对象</button>
</div>
</template>
<script>
export default {
data() {
return {
myObject: {}, // 初始化为{}
};
},
methods: {
updateObject() {
// 通过 this.myObject 来访问对象
this.myObject = { name: 'value' };
},
},
created(){
this.myObject = { name: 'wt' };
}
};
</script>
一般建议是数字初始化为0,字符串初始化为空字符,数组初始化为空数组,对象初始化为null,对象为Null更容易判断该对象是否已经被赋值,不过一般区别不大,
但是如果这个对象开始需要参与到视图渲染的,初始化为null可能会导致视图渲染报错,
总之不是固定的