1.必要性:
1.由于请求异步执行的原因,当还未获取到对象某个键时,在vue中,data中声明的是{}或者是null、undefined
2.实际代码:
1.关于布尔值的判断
// 为0为空字符串为null为undefined都是false
Boolean('')||Boolean(0)||Boolean(null)||Boolean(undefined) // false
// 对象和数组为引用类型,无论是否为空都是true
Boolean({}) // true
Boolean([]) // true
2.引用类型的判断
let obj = {name:'ls'};
let arr = [1,2,3];
// 对象知道键的情况下,通过点出来的方式,判断是否为有效值(存在或者不为0或不为空字符串)
if(obj.name){ 执行代码 }
// 通过JSON自带的stringify来判断是否为空对象
if(JSON.stringify(obj) === '{}'){ 执行代码 }
// 如果是数组的话可以通过Array.isArray()方法和length属性组合判断
if(Array.isArray(arr) && arr.length!==0){ 执行代码 }
3.关于或与非的使用
// 或 (||)
只要其中一项为true则整个判断返回true
// 与 (&&)
满足所有判断为true才返回true
// 非 (!)
在现有判断的基础上取反 !true===false