console.log(!Boolean(route.query.isRead))
用路由query传值,传了一个布尔类型,因为采用的是路由,传过来成字符串了,所以强制转换了一下,但是当传的是true时,这边取反正常为false。当传的是false时,这边取反仍为false,是为什么?
console.log(!Boolean(route.query.isRead))
用路由query传值,传了一个布尔类型,因为采用的是路由,传过来成字符串了,所以强制转换了一下,但是当传的是true时,这边取反正常为false。当传的是false时,这边取反仍为false,是为什么?
true是个字符串,false也是个字符串,你把字符串强制转布尔值,它只要ascii码不是0就肯定是true啊
所以你要做的不是强制转换,是用函数去转
或者干脆直接判断字符串是"true"还是“false”