已知后台返回xmlhttp.responseText = "success";
console.log(xmlhttp.responseText == "success");
得到的结果是false,这是为什么?
很简单,xmlhttp.responseText是一个字符串对象,而"success"只是一个值,==当然false
如果是xmlhttp.resonseText.equals("success")就是true
或者String responseText="success" console.log(responseText=="success") 也是true
你可以参考这条博问:
https://q.cnblogs.com/q/104609/
-------更新,在前端使用js,发现并无此问题。。--------
嗯,多谢,我也是查了都是说没有问题的,原来是浏览器缓存导致文件没有及时更新造成的。
@web_小隆: 不客气。
js 还有这种问题的吗?非前端开发,我是第一次见= =!
console.log(xmlhttp.responseText);
console.log(xmlhttp.responseText == "success");
如果结果还是False,用文本比较工具https://wenbenbijiao.renrensousuo.com/
console.log(xmlhttp.responseText)试一下看是什么结果
js的字符串比较是对比值是否一致,建议你打印一下两个字符串的长度,比较一下长度是否一样,并且看下返回数据是否有一些不可见字符混在里面了