JS两个相同的字符串被判断为不相等问题

今天在写js的时候,遇到一个奇怪的问题,明明两个字符串相等,用alert()打印出来都一样,typeof的结果都是string,

仔细查看过了首尾都没有空格。

可是用a==b却判断为不相等

 

后来在网上查了资料,

虽然两个字符串肉眼看上去没有区别,但是用encodeURIComponent()处理后可能不一样,(我处理后发现有个字符串前面有 %EF%BB%BF,另一个则没有 )

 

解决办法:a.trim() == b.trim()

 

posted @ 2017-09-21 10:50  小昌君  阅读(28201)  评论(2编辑  收藏  举报