问题及思路
用户进入小程序时,若是没有注册,则显示用户的微信头像和微信名字,若是注册后,则显示注册后的头像和名字,可以设置一个全局变量布尔值isShow进行内容的切换,
在用户登录时调用一个接口,后台返回的数组里面,若是数据为空(即用户没有注册),data是个空数组,若是数据有值(即用户已注册),data又变成了一个对象
我刚开始是想着,既然data是个数组,那我判断它的长度不就行了,若是data.length大于0,那表明用户已经注册,但是用户注册后,此时的data已经为数组变为对象了,而对象是没有长度的,所以判断不成立,也不会改变布尔值isShow,后来找了个方法data instanceof Array
进行判断,只判断数据是否是数组,是数组时返回true,不是数组的全部返回false
,可以给isShow默认设置为true,不是数组时改为false即可
let isShow=true;let data=[];
if(data instanceof Array){
console.log('哈哈')
isShow=false
}
//哈哈
let isShow=true;let data={};
if(data instanceof Array){
console.log('嘻嘻')
isShow=false
}
ps:不管工资多少,每天都要嘻嘻哈哈哦~