为了账号安全,请及时绑定邮箱和手机立即绑定

有没有人遇到过这个问题哈!js中 if()的一些疑问?求解答!

有没有人遇到过这个问题哈!js中 if()的一些疑问?求解答!

狐的传说 2019-06-09 10:36:33
constuserData=handleUserRouter(req,res)if(userData){//这里面它会执行吗res.end(JSON.stringify(userData))return}
查看完整描述

2 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

mark一下。
这个我猜跟JS引擎实现相关,因为x存在null、undefined、NaN等等特殊情况,!x可以理解为一个强制类型转换(Boolean)x的意思。另一个猜想,因为考虑到JS有多种实现,为了安全兼容,因此使用上述表达方式。以上只是猜想,有时间的话,肯怕要读读JS的引擎代码才行。

mark一下。
这个我猜跟JS引擎实现相关,因为x存在null、undefined、NaN等等特殊情况,!x可以理解为一个强制类型转换(Boolean)x的意思。另一个猜想,因为考虑到JS有多种实现,为了安全兼容,因此使用上述表达方式。以上只是猜想,有时间的话,肯怕要读读JS的引擎代码才行。

查看完整回答
反对 回复 2019-06-09
?
喵喔喔

TA贡献1735条经验 获得超5个赞

不会,函数要调用才能执行,你这里的userData如果是之前handleUserRouter返回的一个函数,在if里就还是要写成userData()才会得到它的返回值,如果已经是返回的数据了,就不存在执行了。
                            
查看完整回答
反对 回复 2019-06-09
  • 2 回答
  • 0 关注
  • 137 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号