🧠 TypeScript 字符串比较为什么“看起来一样却不相等”?一文搞懂隐形差异! 在开发中,明明两个字符串“看起来一模一样”,但 == 或 === 却返回了 false,这到底是怎么回事?🤯 别慌,这种现象往往源于不可见字符、Unicode 编码差异、全角与半角混用等问题。本文将通过典型示例,带你彻底搞懂这些字符串“陷阱”,并教你如何精准排查! 🔍 一、不可见字符或空格差异 有些字符在视觉上看不出来,但它们确实存在,例如: 零宽空格(\u200B) 多余的空格、制表符(\t) ✅ 示例: const str1 = 'hello'; const str2 =