-
我用双等号判断年龄是不是 0,结果表单没填(空字符串)的也被判成了 0,因为 JavaScript 的 == 在背后偷偷做了类型转换:一次 JS 宽松相等隐式转换的深度复盘
我有段校验用 if (user.age == 0) 判断年龄是不是 0,功能大体能用,可线上那些根本没填年龄(user.age 是空字符串 '')的用户也被当成了 0 岁、走进了 0 岁的特殊处理。当我看到 '' == 0 在控制台返回 true 时人都傻了。查清才明白:JS 的 ==(宽松相等)在比较两个不同类型的值时,会先偷偷把它们隐式转换(强制类型转换…- 0
- 0
弱类型
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!

