定义对象为null表示空,定义为{}表示非空
例如:
obj1 = {}
obj2 = null
if (obj1) {
console.log('obj1非空');
} else {
console.log('obj1空');
}
if (obj2) {
console.log('obj2非空');
} else {
console.log('obj2空');
}
运行:

定义为{},后面可以给对象增加属性;定义为null,后面不可以给对象增加属性
例如:
obj1 = {}
obj2 = null
// 这个是允许的
obj1.name = '张三'
console.log(obj1);
// 这个不允许,会报错,不能给空对象增加属性
obj2.name = '李四'
// 下面这句话不会执行到
console.log(obj2);
运行:

都可以用一个对象赋值
例如:
obj1 = {}
obj2 = null
// 下面是允许的
obj1 = { name: '张三' }
console.log(obj1);
console.log(obj1.name);
console.log('***************************');
// 下面是允许的
obj2 = { name: '李四' }
console.log(obj2);
console.log(obj2.name);
运行:

用对象赋值以后,再增加属性是可以的
obj1 = {}
obj2 = null
// 下面是允许的
obj1 = { name: '张三' }
obj1.age = 20
console.log(obj1);
console.log('***************************');
// 下面是允许的
obj2 = { name: '李四' }
obj2.age = 30
console.log(obj2);
运行:

1484

被折叠的 条评论
为什么被折叠?



