大家都知道在JS的世界里, 0、-0、null、””、false、undefined 或 NaN,这些都可以自动转化为布尔的 false,那么字符串的”false”是不是false呢,答案是否定的,if(“false”) 来判断的话,是等于true的 所以今天遇到个SB问题,就是后台velocity往前台传参,大家一般都是这么写。 0.背景 var hasAuth = $!auth ; // 这个auth就是利用velocity传到前台的 这么写就有一个风险,那就是,如果后台忘记往前台传这个参数,就造成了如下的 var hasAuth = ; // 语法错误,因为;之前是个空,这是由于velo