日常秃头 2022.04.01

今天是2022年4月份的第一天,今天主要学习了跨域 防抖 节流还有一些案例。这几天的课程十分的枯燥无味,明天Ajax就可以完结了。然后就要学习微信小程序开发了,很期待新知识。

中午时候我遇到一个困扰我两节课的bug,这个可能是JS本身就存在的问题。
Snipaste_2022-04-02_19-08-59.png

在我写Ajax封装时候,我写了这段if判断的代码,如果type值是get就调用get函数,如果值为post就调用post函数。但不管值是get还是post结果都执行调用get这个函数,post根本执行不到。然后我就一直琢磨这个东西,一开始我以为我的代码写错了,然后研究半天没有研究出问题所在,后来干脆就直接重写了。结果还是这样。然后我把这段代码单独抽出来执行。
Snipaste_2022-04-01_10-52-04.png
他只会执行代码一,代码二根本执行不到。最后我问了一下老师才明白,这个东西n==='a'此时的判断条件转换为布尔类型后他的值是false,而此时相当于false||'a','a'转换为布尔类型只后结果也是true。因为只要字符串有值并且值不等于空转换为布尔类型都等于true。此时相当于false||true。逻辑或:只要有一方为true则返回结果就是true,所以才会执行代码一

附上这个bug的解决方案
Snipaste_2022-04-02_19-17-35.png

最后老师跟我们说了一句话:如果实在解决不了的bug就先尝试放弃,去操场走一圈散散心。然后再去尝试解决bug。千万不要死磕,死磕的话是最没有效率的解决方式!

唉,太难了

加油刘宇阳,未来的架构师!

评论区
头像